import pymysql def mysql(host,port,user,pwd,database,sql,arguments=None,charset='utf8'): conn = login_mysql = { 'host':'127.0.0.1', 'port': 3306, 'user':'root', 'pwd':'123456', 'database':'flask_test' } pymysql.Connect(host=host,port=port,user=user,password=pwd,database=database,charset=charset) # 鏈接數據庫 cursor = conn.cursor() # 獲取遊標 # 遊標將數據庫返回的結果集逐條獲取後彙總返回。 # 遊標每次只能在結果集中提取一條記錄, # 遊標由結果集和結果集中指向特定記錄的遊標位置組成。 # 結果集中的數據,可根據遊標位置逐一操做。 if arguments: v = cursor.execute(sql,arguments) # v = 返回獲得受影響的行數,而且已經獲得的數據 else: v = cursor.execute(sql) result = cursor.fetchall() # fetchall()取出數據庫操做返回的結果 # result = cursor.fetchone() # fetchall()取出數據庫操做返回的結果,只取一條,第二次取得下一條數據 # result = cursor.fetchmany(2) # fetchall()取出數據庫操做返回的結果,指定取得幾條 conn.commit() # 查詢不須要commit,其餘須要 cursor.close() # 關閉遊標 conn.close() # 關閉鏈接 return result sql = "insert into customer(name,age,gender) values('%s','%s','%s');" %(name,age,gender) mysql(**login_mysql,sql=sql)