python运用mysql代码块,可跨文件调用
Posted 扬志九洲
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python运用mysql代码块,可跨文件调用相关的知识,希望对你有一定的参考价值。
本代码块将文件夹中id和对应文件名写入数据库。
import pymysql
import os
class database():
def __init__(self,filename,user,passwd,db):
self.filename=filename
self.user = user
self.passwd = passwd
self.db = db
#在main文件中调用该函数写入数据库
def write(self):
mi = pymysql.connect(host='localhost', user=self.user, passwd=self.passwd, db=self.db)
cursor = mi.cursor()
cursor.execute('DROP TABLE IF EXISTS Miwen')
mi.close()
id=0
for i in os.listdir(filename):
with open(filename+'/'+i,'r',encoding='utf-8') as f:
f.read()
self.data(id,i)
id=id+1
#写入数据库
def write_data(self,id,file_name):
try:
#连接数据库
mi = pymysql.connect(host='localhost', user=self.user, passwd=self.passwd, db=self.db)
#建立游标
cursor = mi.cursor()
#如果原来不存在该表格则创造表格
sql= 'CREATE TABLE IF NOT EXISTS Miwen (id int,file_name varchar(64))'
cursor.execute(sql)
#插入id和file_name
sqlQuery='INSERT INTO MIWEN(id,file_name)VALUE(%s,%s)'
value=(id,file_name)
cursor.execute(sqlQuery,value)
mi.commit()
cursor.close()
mi.close()
except pymysql.Error as e:
print(str(e))
#查询文件是否存在,若存在则输出
def read_sql(j):
try:
mi = pymysql.connect(host='localhost', user=self.user, passwd=self.passwd, db=self.db)
cursor = mi.cursor()
#选择表格中的file_name
sql='SELECT file_name FROM miwen'
cursor.execute(sql)
result = cursor.fetchall()
j=j
for i in result:
i=str(i)[2:-3]
if i==j:
return i
print('该文件不存在')
except pymysql.Error as e:
print(str(e))
以上是关于python运用mysql代码块,可跨文件调用的主要内容,如果未能解决你的问题,请参考以下文章