SQLite in Python

Ich wollte eine Datenbank mit Python verwenden, also habe ich das in der Standardbibliothek enthaltene sqlite3-Modul berührt.

Klicken Sie hier für den Beispielcode.

# -*- coding: utf-8 -*-

import sqlite3
from contextlib import closing

dbname = 'database.db'

with closing(sqlite3.connect(dbname)) as conn:
    c = conn.cursor()

    #Führen Sie eine SQL-Anweisung mit der Methode execute aus
    create_table = '''create table users (id int, name varchar(64),
                      age int, gender varchar(32))'''
    c.execute(create_table)

    #Verwenden Sie beim Festlegen eines Werts in einer SQL-Anweisung nicht die Python-Formatmethode usw.
    #Wo Sie einstellen möchten?Im zweiten Argument der Methode execute?Der Wert, der für gilt
    #Vorbei an Taple.
    sql = 'insert into users (id, name, age, gender) values (?,?,?,?)'
    user = (1, 'Taro', 20, 'male')
    c.execute(sql, user)

    #Wenn Sie mehrere SQL-Anweisungen gleichzeitig ausführen möchten, erstellen Sie eine Liste mit Taples
    #Ausführen Viele Methoden werden ausgeführt
    insert_sql = 'insert into users (id, name, age, gender) values (?,?,?,?)'
    users = [
        (2, 'Shota', 54, 'male'),
        (3, 'Nana', 40, 'female'),
        (4, 'Tooru', 78, 'male'),
        (5, 'Saki', 31, 'female')
    ]
    c.executemany(insert_sql, users)
    conn.commit()

    select_sql = 'select * from users'
    for row in c.execute(select_sql):
        print(row)

Nachfolgend finden Sie eine kurze Erläuterung des Beispielcodes.

Verbindung zur Datenbank herstellen

Verwenden Sie zum Herstellen einer Verbindung zur Datenbank die Methode "sqlite3.connect ()".

conn = sqlite3.connect(dbname)

Die Methode "sqlite3.connect ()" erstellt ein Verbindungsobjekt. Um die SQL-Anweisung auszuführen, muss aus dem Connection-Objekt ein weiteres Cursor-Objekt erstellt werden.

	c = conn.cursor()

Mit diesem Cursor-Objekt können verschiedene Befehle in der Datenbank ausgeführt werden.

SQL-Ausführung

Verwenden Sie zum Ausführen einer SQL-Anweisung die Methode execute () des Cursor-Objekts.

	c.execute(sql[, parameters])

Wann wird in die SQL-Anweisung des ersten Arguments der einzugebende Wert eingebettet? Wird im zweiten Argument als Taple übergeben.

Example

	user = (1, 'Taro', 20, 'male')
	c.execute('insert into users (id, name, age, gender) values (?,?,?,?)', user)

Auf diese Weise werden die Werte im Taple auf den Teil? Von SQL angewendet, und schließlich wird die folgende SQL-Anweisung ausgeführt.

	insert into users (id, name, age, gender) values (1, 'Taro', 20, 'male')

Wenn Sie mehrere SQLs gleichzeitig ausführen möchten, verwenden Sie die Methode executeemany () und übergeben Sie die Liste der Taples als zweites Argument (siehe Beispielcode).

Speichern Sie die Änderungen in der Datenbank

Rufen Sie immer die Methode commit () auf, nachdem Sie der Datenbank die Methode execute () oder die Methode executeemany () hinzugefügt oder gelöscht haben. Wenn Sie die Datenbank schließen, ohne diese Methode aufzurufen, werden Ihre Änderungen nicht gespeichert.

	conn.commit()

Datenbank schließen

Vergessen Sie nicht, die Datenbankverbindung am Ende des Programms zu schließen. Verwenden Sie dazu die Methode close (). ** Beachten Sie, dass diese Methode commit () nicht automatisch aufruft. ** ** **

	conn.close()

Recommended Posts

SQLite in Python
Python in der Optimierung
CURL in Python
Metaprogrammierung mit Python
Python 3.3 mit Anaconda
Geokodierung in Python
Metaanalyse in Python
Unittest in Python
Verwendung von SQLite in Python
Epoche in Python
Zwietracht in Python
Deutsch in Python
DCI in Python
Quicksort in Python
nCr in Python
N-Gramm in Python
Programmieren mit Python
Plink in Python
Konstante in Python
FizzBuzz in Python
Fremdschlüssel in SQLite von Python [Hinweis]
Schritt AIC in Python
LINE-Bot [0] in Python
CSV in Python
Reverse Assembler mit Python
Reflexion in Python
Konstante in Python
nCr in Python.
Format in Python
Scons in Python 3
Puyopuyo in Python
Python in Virtualenv
PPAP in Python
Quad-Tree in Python
Reflexion in Python
Chemie mit Python
Hashbar in Python
DirectLiNGAM in Python
LiNGAM in Python
In Python reduzieren
In Python flach drücken
Täglicher AtCoder # 36 mit Python
Clustertext in Python
Täglicher AtCoder # 32 in Python
Täglicher AtCoder # 6 in Python
Täglicher AtCoder # 18 in Python
Bearbeiten Sie Schriftarten in Python
Singleton-Muster in Python
Dateioperationen in Python
Lesen Sie DXF mit Python
Täglicher AtCoder # 53 in Python
Tastenanschlag in Python
Verwenden Sie config.ini mit Python
Löse ABC168D in Python
Täglicher AtCoder # 7 in Python
LU-Zerlegung in Python
Ein Liner in Python
Einfacher gRPC in Python