pymsql插入数据


import pymysql

conn = pymysql.connect(
    host="192.168.85.129",
    port=3306,
    user="root",
    password="123456",
    database="pymysql",
    charset="utf8"
 )

cursor = conn.cursor()   # 默认游标类型为 Cursor类,即表现形式为元组

while True:
    name = input("请输入插入记录的用户名>>>").strip()
    if name.upper() == "Q":
        break
    password = input("请输入插入记录的密码>>>").strip()
    gender = input("请输入插入记录的性别>>>").strip()   # 枚举类型  male 和  female
    age = int(input("请输入插入记录的年龄>>>").strip())
    sql = "insert into user (name,sex,age,password) values('%s','%s',%d,'%s')" % (name,gender,age,password)
    cursor.execute(sql)
    conn.commit()
sql = "select * from user"
ret = cursor.execute(sql)
res = cursor.fetchall()  # 获得所有记录
print(res)   # ((1, 'chris', 'male', 28, '123456'), (2, 'jiayong', 'male', 18, '123'), (3, 'wuyi', 'female', 21, '123456'), (4, 'chendu', 'male', 23, '123'))
cursor.scroll(0,mode="absolute")   # 将光标以绝对方式,移动到绝对位置 0,即第一行记录
res = cursor.fetchone()
print(res)   # (1, 'chris', 'male', 28, '123456')
cursor.scroll(2,mode="relative")
res = cursor.fetchone()  # (4, 'chendu', 'male', 23, '123')   # 可见光标的下标从0开始,当最后一条记录获取后,光标移动到记录的结束。即结束也是一个光标位置
print(res)
try:
    res = cursor.scroll(1,mode="relative")
    print(res)
except IndexError as e:
    print(e)
    print("光标越界")
cursor.scroll(-2,mode="relative")
res = cursor.fetchone()
print(res)

cursor.scroll(0,mode="absolute")   # 将游标移动到绝对位置 0,即,表的第一行记录处,好像不能直接移动表尾
# cursor.executemany()
# cursor.nextset()
print(cursor.fetchone())

# cursor.scroll(12,mode="absolute")
# print(cursor.fetchone())

# 通过一条查询,插入多条数据

sql = "insert into user (name,password,sex,age) values(%s,%s,%s,%s)"  # 自己拼接字符串,存在SQL注入问题,交给pymysql模块

ret = cursor.executemany(sql,[('wangyuan','123456','male',38),('naxing','123','female',33)])
conn.commit()
print(ret)

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2026 CODEPRJ.COM