时间:2021-07-01 10:21:17 帮助过:11人阅读
Python3中专门用于操作Mysql数据库的模块。
import pymysql
conn=pymysql.connect(host=’127.0.0.1’,port=3306,user=’root’,passwd=’root’,db=’数据库名’,charset=’utf8’)
cursor=conn.cursor()
cursor.execute(‘要执行的SQL语句’)
Inp=input(‘请输入内容’)
Sql=‘insert into 表名(列名) values (“%s”)’
Sql=Sql % (Inp,)
cursor.execute(Sql)
Inp=input (‘请输入内容:’)
cursor.execute(‘ insert into 表名(列名)values(%s)’,Inp)
插入多个值:
cursor.execute(‘insert into 表名(列名,列名) values(%s,%s),(‘值1’,‘值2’)
l=[(‘值1’,’值2’),(‘值3’,’值4’)]
cursor.executemany(‘insert into 表名(列名,列名)values(%s,%s)’,l)
cursor.execute(‘delete from test1 WHERE id=%s‘,5) #删除表test1中id为5的数据行
cursor.execute(‘update test1 set age=%s WHERE sss=%s‘,(18,‘aaa’)) #更新test1表中sss列中aaa对应的age列的值为18。
result=cursor.fetchall() #取出表中所有数据
print (result) #将表中数据以元组的形式打印出来
result=cursor.fetchone() #取出表中第一条数据
print (result) #将表中第一条数据以元组的形式打印出来
result=cursor.fetchmany(3) #取出表中前3条数据
print (result) #将表中前3条数据以元组的形式打印出来
注:使用fetch的方法取数据时,游标会依次向下移动,即:
result=cursor.fetchone() #取出表中第一条数据
print (result) #将表中第一条数据以元组的形式打印出
result=cursor.fetchone() #取出表中第二条数据
print (result) #将表中第二条数据以元组的形式打印出
此时,可以使用scroll的方法移动游标。cursor.scroll(0,mode=’absolute’) #游标返回原点(绝对模式)
cursor.scroll(-2,mode=’relative’) #游标向上移动2个(相对模式)
创建游标:cursor=conn.cursor(cursor=pymysql.cursors.DictCursor)
取数据:cursor.execute(‘select * from 表名’)
print (cursor.fetchall())
如果只取个别列的数据,只需将*改成对应列的列名即可。
cursor.execute(‘insert into 表名(列名)values(%s)’,(‘值’))
conn.commit()
print (cursor.lastrowid) #刚插入数据行的自增列的数字
在创建了要执行的SQL语句后,并不会立即执行,而是需要提交事务,否则创建无效。
conn.commit()
cursor.close( )
conn.close( )
Pymyaql操作数据库
标签:返回 操作 class from etc 依次 导入模块 let .exe