Python 의 Mysql 가 져 오기 내 보 내기
2872 단어 믿 을 수 없 는 Python 코드
#!/usr/bin/python3
#creat date: 2020/03/08
#update time 2020/03/09
import pymysql
def find(host,user, password,database,charset='utf8'):
#
conn = pymysql.connect(host=host,user=user,password=passwd,database=db,charset=charset)
#
cursor = conn.cursor()
# sql ,
sql = "select * from words_counts_rank where id<10;"
#
cursor.execute(sql)
#
res = cursor.fetchall()
print(res)
#
conn.close()
def createtable(host, user, password, charset='utf8'):
conn = pymysql.connect(host=host, user=user, password=password, charset=charset,database='test')
cursor = conn.cursor()
sql = '''
create table student
(
id int primary key,
name char(20) not null,
age int
);
'''
cursor.execute(sql)
conn.close()
print(' ')
def importdata_from_file(host, user, password, db,table,file, charset='utf8'):
conn = pymysql.connect(host=host,user=user,password=password,
database=db,charset=charset)
cursor = conn.cursor()
with open(file) as filedata:
for line in filedata:
row = line.split(",")
'''
:
1、 MySQL int ,pymysql python int , %s
2、 MySQL , python str , SQL , str
'''
sql = 'insert into %s values(%s,%s,%s);'%(table,row[0],"'"+row[1]+"'",row[2])
cursor.execute(sql)
#
print(sql)
#sql = 'insert into student values(10120,"yes",21);'
#cursor.execute(sql)
conn.commit()
conn.close()
def sqldata2file(host, user, password, db, table, file, charset='utf8'):
conn = pymysql.connect(host=host, user=user, password=password,
database=db, charset=charset)
cursor = conn.cursor()
sql = 'select * from %s'%table
cursor.execute(sql)
data = cursor.fetchall()
print(data)
with open(file,'w') as f:
for row in data:
f.write(str(row[0])+","+row[1]+","+str(row[2])+'
')
conn.close()
if __name__ == '__main__':
#
host = 'localhost'
user = 'root'
passwd = '123'
charset='utf8'
db='test'
table='student'
#
#find(host,user,passwd,db,charset)
#createtable(host,user,passwd,charset)
#importdata_from_file(host,user,passwd,db,table,'datasource.txt')
#sqldata2file(host, user, passwd, db, table, 'sqldata.txt')