使用的库 pymysql
sql命令的执行:
#连接数据库
conn = mdb.connect(host=db_host,passwd=db_pw,user=db_user,db=name)
#获取游标
cur = conn.cursor()
#sql语句
sql = "INSERT INTO charactors (ty_name, ty_title ,ty_content,ty_picture,ty_photos) VALUES ( '%s', '%s','%s','%s','%s' )"
#执行sql语句
cur.execute(sql % tuple(('a','b','c','d','e')))
#数据提交,之所以要提交是因为没提交之前数据会放在缓存区里。应该是每条命令都需要commit的,但是有的内置了,或设置自动提交。
conn.commit()
print('成功插入', cur.rowcount, '条数据')
#关闭数据库
cur.close()
conn.close()
2.sql查询一条数据是否存在
conn = mdb.connect(host=db_host,passwd=db_pw,user=db_user,db=name)
cur = conn.cursor()
#查询book_id==i的一条记录,可以用来判断数据库中是否存在某一条数据
sql = "select 1 from books where book_id = '"+str(i)+"' limit 1"
cur.execute(sql)
result = cur.fetchone()#读取一条数据,游标下移1位。还有一个fetchall()读取全部数据,返回时一个列表。
#逐个遍历该表
if(result!=None):
print("数据已存在");
cur.close()
conn.close()
3.清空数据库中book表
conn = mdb.connect(host=db_host,passwd=db_pw,user=db_user,db=name)
cur = conn.cursor()
#查询book_id==i的一条记录,可以用来判断数据库中是否存在某一条数据
sql = "delete from books"(或者truncate table book 这两者区别就不提了)
cur.execute(sql)
conn.commit()
cur.close()
conn.close()