"""關係型資料庫(SQL資料庫):MySQL、Oracle、Sqlite3、SQLServer...1.可以存儲統一格式的數據2.可以用於保存大量的數據3.表與表之間有關聯 非關係型數據(NoSQL資料庫):Mangodb、Redis....""" # 1.建立資料庫連接# connect() 若 ...
"""
關係型資料庫(SQL資料庫):MySQL、Oracle、Sqlite3、SQLServer...
1.可以存儲統一格式的數據
2.可以用於保存大量的數據
3.表與表之間有關聯
非關係型數據(NoSQL資料庫):Mangodb、Redis....
"""
# 1.建立資料庫連接
# connect() 若資料庫文件存在,則打開,若不存在,則創建
connect = sqlite3.connect('database.db')
# 創建表的sql語句
# CREATE TABLE 表名(欄位1 欄位類型 約束條件,欄位2...)
# INTEGER 無符號整形
# CHAR 字元
# VARCHAR 字元 預設可以存儲字元串長度255
# TEXT 字元文本 可以存儲大量文本數據
# PRIMARY KEY 主鍵約束 預設唯一,非空
# NOT NULL 非空約束
# UNIQUE 唯一約束
# IF NOT EXISTS 若表不存在,就創建表
# 例如學員管理系統中,可以把學號/身份證號作為主鍵
# 準備要執行的SQL語句
sql = "CREATE TABLE IF NOT EXISTS student(s_id INTEGER PRIMARY KEY,name CHAR NOT NULL,phone INTEGER UNIQUE)"
# 2.獲取游標,游標用來操作sql語句執行的
cursor = connect.cursor()
# 3.執行sql語句
cursor.execute(sql)
# 1.插入數據的sql語句
# INSERT INTO 表名(欄位名1、欄位名2...) VALUES(值1,值....)
# insert_sql = "INSERT INTO student(s_id,name,phone)VALUES(072503,'王五',110)"
# 執行插入數據的sql語句
# cursor.execute(insert_sql)
# 2.修改資料庫中的數據,修改SQL語句
# UPDATE 表名 SET 修改的欄位1=修改的值 WHERE 修改的條件
# update_sql = "UPDATE student SET name='小明',phone=120 WHERE s_id=72501"
# cursor.execute(update_sql)
# 3.刪除資料庫中的數據
# DELETE FROM 表名 WHERE 刪除的條件
# del_sql = "DELETE FROM student" 刪除表中所有數據
# del_sql = "DELETE FROM student WHERE name='李四'"
# cursor.execute(del_sql)
# 4.讀取資料庫中的數據
# * 表示所有欄位
# SELECT * FROM 表名 WHERE 查詢的條件
# 可以指定獲取某些欄位數據
# SELECT name,phone FROM 表名 WHERE 查詢條件
select_sql = "SELECT name,phone FROM student WHERE s_id=72501"
# 執行查詢語句會返回一個結果集
result = cursor.execute(select_sql)
# 遍歷查詢結果
for x in result:
# x就是查詢到的數據,是一個小元組,元組中存放的是每一個欄位的數據
print(x)
# 提交操作
connect.commit()
# 4.關閉游標
cursor.close()
# 5.關閉連接
connect.close()