1. 程式人生 > 實用技巧 >python連線mysql資料庫,並進行新增、查詢資料

python連線mysql資料庫,並進行新增、查詢資料

import pymysql
# 連線mysql資料庫
conn = pymysql.connect(host='localhost',user='root',password='your_password',database='test',port=3306)
# 得到一個遊標
cursor = conn.cursor()
#建立一個表
sql = '''
CREATE TABLE `sc`(
    `sno` CHAR(8) not null,
   `sname` CHAR(8) not null,
   `sage` int ,
   PRIMARY KEY (sno)
)ENGINE=InnoDB DEFAULT CHARSET=utf8;


''' sql2 = ''' insert into sc(sno,sname,sage) values('1','張三',20); ''' # 無論values裡面的值是整形還是字串,都要用%s sql3 = ''' insert into sc(sno,sname,sage) values(%s,%s,%s); ''' # 插入的變數 id = '2' name = '李四' age = 12 cursor.execute(sql) cursor.execute(sql2) # execute的第二個引數就是一個元組,裡面放置的就是引數 cursor.execute(sql3,(id,name,age))
#記得要提交 conn.commit() # 關閉與資料庫的連線 conn.close()

下面是資料查詢

import pymysql
# 連線mysql資料庫
conn = pymysql.connect(host='localhost',user='root',password='qu513712qu',database='test',port=3306)
# 得到一個遊標
cursor = conn.cursor()
sql = '''
select * from sc;
'''
# 只需要執行,不需要commit提交
cursor.execute(sql)
while 1:
    
# fetchone一次只能取出一條資料,相當於指標,取出一條資料後,指標指向後面那條資料 result = cursor.fetchone() if result: print(result) else: break conn.close() ''' 輸出: ('1', '張三', 20) ('2', '李四', 12) 程式碼這樣寫結果也是和上面輸出的一樣 results = cursor.fetchall() for result in results: print(results) 這樣寫的話就會拿出來搜尋到的前兩條資料 results = cursor.fetchmany(2) '''