day039 navicat 和 pymysql

---------------------------------------------------相信时间的力量,单每月经过努力的时间,一切的安排都是懊脑的安排.

# # -------------------------------*******************-------------------------------

02 通过pymysql来添加修改数据

import pymysql

conn = pymysql.connect(
host='127.0.0.1',
port=3306,
user='root',
password='666',
database='day02',
charset='utf8'
)
# cursor = conn.cursor()
cursor = conn.cursor(pymysql.cursors.DictCursor)
# sql = "select * from userinfo where username='%s' and pword='%s';"%(username,password)
# sql = "select * from userinfo where username=%s and pword=%s;"
# sql = "insert into userinfo(username,pword) values(%s,%s);"
# sql = "update userinfo set pword='666666' where username='文杰';"
sql = "select * from userinfo;"
print(sql)
res = cursor.execute(sql)
# res = cursor.executemany(sql,[('文杰','666'),('鸿洁','666')])
print(res)
print(cursor.fetchall())

conn.commit()



# # --------------[通过SQL注入]--------------
import pymysql

conn = pymysql.connect(
host='127.0.0.1',
port=3306,
user='root',
password='666',
database='day02',
charset='utf8'
)

username = input('请输入用户名:')
password = input('请输入密码:')

cursor = conn.cursor()
# sql = "select * from userinfo where username='%s' and pword='%s';"%(username,password)
sql = "select * from userinfo where username=%s and pword=%s;"
print(sql)
res = cursor.execute(sql,[username,password])
print('受影响的行数:',res)
if res:
print('登录成功')
else:
print('用户名或者密码不对')



# # --------------[pymysql的简单使用]--------------


import pymysql

conn = pymysql.connect(
host='127.0.0.1',
port=3306,
user='root',
password='666',
database='day02',
charset='utf8'
)

username = input('请输入用户名:')
password = input('请输入密码:')

cursor = conn.cursor()
sql = "select * from userinfo where username='%s' and pword='%s';"%(username,password)
print(sql)
res = cursor.execute(sql)
print(res)
# print(cursor.fetchone())
# print(cursor.fetchmany(2))
print(cursor.fetchmany(5))
print('xxxxxxxxxx')
cursor.scroll(3,'absolute')
# cursor.scroll(3,'relative')

print(cursor.fetchone())

阅读目录

参考链接 https://www.cnblogs.com/clschao/articles/10023248.html

掌握:
#1. 测试+链接数据库
#2. 新建库
#3. 新建表,新增字段+类型+约束
#4. 设计表:外键
#5. 新建查询
#6. 备份库/表

#注意:
批量加注释:ctrl+?键
批量去注释:ctrl+shift+?键

 增、删、改:conn.commit()

    查操作在上面已经说完了,我们来看一下增删改,也要注意,sql语句不要自己拼接,交给excute来拼接

复制代码
复制代码
import pymysql
#链接
conn=pymysql.connect(host='localhost',port='3306',user='root',password='123',database='crm',charset='utf8')
#游标
cursor=conn.cursor()

#执行sql语句
#part1
# sql='insert into userinfo(name,password) values("root","123456");'
# res=cursor.execute(sql) #执行sql语句,返回sql影响成功的行数
# print(res)
# print(cursor.lastrowid) #返回的是你插入的这条记录是到了第几条了 #part2 # sql='insert into userinfo(name,password) values(%s,%s);' # res=cursor.execute(sql,("root","123456")) #执行sql语句,返回sql影响成功的行数 # print(res) #还可以进行更改操作:
#res=cursor.excute("update userinfo set username='taibaisb' where id=2")
#print(res) #结果为1 #part3 sql='insert into userinfo(name,password) values(%s,%s);' res=cursor.executemany(sql,[("root","123456"),("lhf","12356"),("eee","156")]) #执行sql语句,返回sql影响成功的行数,一次插多条记录 print(res) #上面的几步,虽然都有返回结果,也就是那个受影响的函数res,但是你去数据库里面一看,并没有保存到数据库里面, conn.commit() #必须执行conn.commit,注意是conn,不是cursor,执行这句提交后才发现表中插入记录成功,没有这句,上面的这几步操作其实都没有成功保存。 cursor.close() conn.close()
复制代码
复制代码

  四 查:fetchone,fetchmany,fetchall

    

复制代码
复制代码
import pymysql
#链接
conn=pymysql.connect(host='localhost',user='root',password='123',database='egon')
#游标
cursor=conn.cursor()

#执行sql语句
sql='select * from userinfo;'
rows=cursor.execute(sql) #执行sql语句,返回sql影响成功的行数rows,将结果放入一个集合,等待被查询

# cursor.scroll(3,mode='absolute') # 相对绝对位置移动
# cursor.scroll(3,mode='relative') # 相对当前位置移动
res1=cursor.fetchone()
res2=cursor.fetchone()
res3=cursor.fetchone()
res4=cursor.fetchmany(2)
res5=cursor.fetchall()
print(res1)
print(res2)
print(res3)
print(res4)
print(res5)
print('%s rows in set (0.00 sec)' %rows)



conn.commit() #提交后才发现表中插入记录成功
cursor.close()
conn.close()

'''
(1, 'root', '123456')
(2, 'root', '123456')
(3, 'root', '123456')
((4, 'root', '123456'), (5, 'root', '123456'))
((6, 'root', '123456'), (7, 'lhf', '12356'), (8, 'eee', '156'))
rows in set (0.00 sec)
'''
复制代码



猜你喜欢

转载自www.cnblogs.com/dealdwong2018/p/10099975.html