對python插入數據庫和生成插入sql的示例講解
更新時間:2018年11月14日 10:27:39 作者:yan456jie
今天小編就為大家分享一篇對python插入數據庫和生成插入sql的示例講解,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
如下所示:
#-*- encoding:utf-8 -*-
import csv
import sys,os
import pymysql
def read_csv(filename):
'''
讀取csv文件
'''
data = []
with open(filename) as f:
f_csv = csv.reader(f)
headers = next(f_csv)
#數據格式[1111,22222,1111,1111,.....]
for row in f_csv:
# Process row
field1=row[0]
data.append(row)
print headers
return data
def load_data():
'''
插入數據庫
'''
filename = sys.argv[1]
try:
#獲取一個數據庫連接,注意如果是UTF-8類型的,需要制定數據庫
conn=pymysql.connect(host='192.168.1.161',user='naliworld',passwd='password!',db='search',port=3306,charset='utf8')
cur=conn.cursor()#獲取一個游標
data=read_csv(filename)
for row in data:
# Process row
field1=row[0]
sql='''insert into search.tb_text_uid_list(appId,type,uid,creator,createTime) values({},{},{},{},{}) '''.format(3,1,field1,'\'admin\'','\'2018-08-14 13:44:09\'')
print sql
cur.execute(sql)
cur.close()#關閉游標
conn.commit()
conn.close()#釋放數據庫資源
except Exception as e :print(e)
def get_sql():
'''
插入數據庫生成插入sql
'''
sql_list = []
filename = sys.argv[1]
data=read_csv(filename)
for row in data:
# Process row
field1=row[0]
sql='''replace into search.tb_text_uid_list(appId,type,uid,creator,createTime) values({},{},{},{},{}) '''.format(3,1,field1,'\'admin\'','\'2018-08-14 13:44:09\'')
sql_list.append(sql)
file_object = open('sql.txt', 'w')
file_object.writelines([line+';\n' for line in sql_list])
file_object.close( )
if __name__ == "__main__":
get_sql()
以上這篇對python插入數據庫和生成插入sql的示例講解就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關文章
淺談Python實現opencv之圖片色素的數值運算和邏輯運算
今天帶大家來學習的是關于Python的相關知識,文章圍繞著圖片色素的數值運算和邏輯運算展開,文中有非常詳細的的介紹及代碼示例,需要的朋友可以參考下2021-06-06
利用pandas如何實現類似sql中的left join操作
這篇文章主要介紹了利用pandas如何實現類似sql中的left join操作,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2023-06-06
Ubuntu 下 vim 搭建python 環(huán)境 配置
這篇文章主要介紹了Ubuntu 下 vim 搭建python環(huán)境配置,需要的朋友可以參考下2017-06-06

