天天看點

python-sqlite3方法sqlite3

sqlite3

connection — 資料庫連接配接對象

conn = sqlite3.connect('weatherModule.db')  # 連接配接資料庫
    conn = sqlite3.connect('weatherModule.db', check_same_thread=False)  # 如果多線程通路需要設定關鍵字
    cur = conn.cursor()  # 建立遊标
    conn.commit()  # 送出事務
    conn.rollback()  # 復原事務
    conn.close() # 關閉連接配接
           

cursor — 遊标對象

cur.execute()  # 執行sql語句(插入,查找。。。)
    print(cur.fetchone())  # 擷取遊标上的結果下一行
    print(cur.fetchmany(5))  # 擷取遊标結果的幾行
    print(cur.fetchall())  # 擷取所有行
           
python-sqlite3方法sqlite3

建立資料庫:

cur.execute("CREATE TABLE place (city VARCHAR (20))")  # 單個字段
    cur.execute("CREATE TABLE singer_song (ID inter PRIMARY KEY,singer VARCHAR (20), song_name VARCHAR (20))")  # 多個字段
           

插入資料:

cur.execute('INSERT INTO place (city) VALUES (?)', [i.strip()])  # 插入1個值的資料,後面的值為清單
    cur.execute('INSERT INTO singer_song (singer, song_name) VALUES (?, ?)', (i, j))
           

查找資料:

cur.execute("SELECT song_name FROM mytable where singer_name ='%s'"%name1)
    cur.execute("SELECT * FROM place WHERE rowid = 173")  # rowid為系統預設的id(每一行前面的id,從1開始)
           

更新/删除資料:

cur.execute("UPDATE song SET name = ? WHERE ID = ? ", ('周傑倫', 12))
    cur.execute("DELETE FROM song  WHERE ID = 2 ")
           

删除表