python之对mysql数据库的相关操作
python中的pymysql库提供了针对mysql数据的操作接口。
简要记录一下常用操作:
提前说明一下:在进行增加、修改和删除操作时,需要:
try:
# 提交到数据库执行
sql_conn.commit()
except:
# 发生错误时回滚
sql_conn.rollback()
如果不执行提交操作,sql语句不会生效。
1.链接数据库
# mysql数据库 import pymysql as sql # 建立数据库连接 sql_conn = sql.connect('localhost', user="root", passwd="123456", db="testdb") # 获取操作游标 cursor = sql_conn.cursor()
2.增加数据
sql = "INSERT INTO photoinfo(user_id, \ photo_name_1, photo_name_2, photo_name_3) \ VALUES ('%s', '%s', '%s', '%s')" % \ (user_id, photo_names[0], photo_names[1], photo_names[2]) try: # 执行sql语句 cursor.execute(sql) # 提交到数据库执行 sql_conn.commit() except: # 发生错误时回滚 sql_conn.rollback() return False return True
3. 查询操作
cursor.execute("select * from photoinfo where user_id = '%s'" %(user_id)) data = cursor.fetchone() if data: # 获取到数据 return True else: # 未获取到对应数据 return False
4. 删除操作
try: cursor.execute("delete from photoinfo where user_id = '%s'" % (user_id)) sql_conn.commit() except: # 发生错误时回滚 sql_conn.rollback()
5. cursor对数据的操作
#获取读取的一条数据 cursor.fetchone() #获取所有数据 cursor.fetchall() #获取多条数据 --------- 获取前number条数据 cursor.fetchmany(number) #遍历获取的数据 for data in cursor: #data相当于一个list,data[0]对应读取数据表格的第一个字段,以此类推 if data[0] == '1': data[1] = 'test' else: data[2] = 'test1'

浙公网安备 33010602011771号