Skip to content
Snippets Groups Projects
Commit 7b70172b authored by majidrouhanintnu's avatar majidrouhanintnu
Browse files

upd

parent d104c836
No related branches found
No related tags found
No related merge requests found
%% Cell type:markdown id: tags:
### MySQL database
Man kan koble opp mot forskjellige databaser i Python:
- GadFly
- mSQL
- **MySQL**
- PostgreSQL
- Microsoft SQL Server 2000
- Informix
- Interbase
- Oracle
- Sybase
-
Eller bruke SqlLite3
- Egen database modul for Python
%% Cell type:code id: tags:
``` python
# Viser hvordan vi kobler oss mot MySQL og leser/oppdaterer data.
# Må installere PyMySQL først: pip install pymysql
import pymysql
```
%% Cell type:markdown id: tags:
For å logge oss inn på databasen, må vi ha en konto på database-serveren.
Følgende informasjon må vi ha:
- host: navn på database-server
- user: brukernavn for å koble oss til serveren
- password: passord for å koble oss til serveren
- database: database seed (en database server kan inneholde mange database instanser)
Dersom vi ikke ønsker å "hardkode" passord (skrive det i programmet i klar tekst eller i en fil), kan vi bruke modulen **getPass** for å taste inn passordet når programmet starter.
%% Cell type:code id: tags:
``` python
# importer funksjonen getpass fra modulen getpass.
# Vi bruker getpass for å lese passord fra bruker (slik at det ikke vises i klartekst)
from getpass import getpass
```
%% Cell type:code id: tags:
``` python
# Definer variabler for oppkoblingsparameteret
my_host = "mysql.stud.iie.ntnu.no"
my_user = "rouhani" # Skriv inn brukernavnet ditt her
my_password = getpass()
my_database = "rouhani"
```
%% Cell type:markdown id: tags:
### Koble opp mot databasen og les fra en tabell
%% Cell type:code id: tags:
``` python
with pymysql.connect(host = my_host, user = my_user, password = my_password, database = my_database) as my_db:
my_cursor = my_db.cursor()
my_sql = "SELECT regnr,navn,regdato,regav FROM gjenstand"
my_cursor.execute(my_sql)
for row in my_cursor:
print(row)
```
%% Cell type:markdown id: tags:
### Koble opp mot databasen og oppdater rader i en tabell
%% Cell type:markdown id: tags:
### Koble opp mot databasen og fjern rader fra en tabell
......@@ -10,6 +10,8 @@ paginate: true
**Læringsutbytte**
* Lære å lese fra og skrive til fil
* Lære om unntakshåndtering og kjøretidsfeil
* Lære å koble seg mot MySql database
---
......
......@@ -58,7 +58,7 @@
]
},
{
"Leksjon 5: Filbehandling, unntakshåndtering": [
"Leksjon 5: Filbehandling, unntakshåndtering, programmering mot databaser": [
{"Introduksjon (slides)": {"Introduksjon":"lecture5/notes/slides/lecture-5.pdf"}}
,{
"Filbehandling": [
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment