9月29日我的学习心得与个人理解
pycharm模块
IP呼入PORT
能够唯一标识全世界独一无二的电脑上的某一个应用程序
常用软件端口号
MySQL 3306
MongoDB 27017
redis 6379
tomcat 8080
django 8000
flask 5000
conn = pymysql.connect(
host = '127.0.0.1', #本地回环地址
port = 3306,
user = 'root',
password = '123456',
database = '库名' , #指定想要操作的库
charset = 'utf8', #一定不要加-
)
产生一个游标对象
cursor = conn.cursor()
数据变成列表套字典
cursor = conn.cursor(cursor=pymysql.cursors.DictCursor)
res = cursor.execute(sql) 返回值为当前sql语句执行之后影响的行数
获取sql语句的执行结果
cursor.fetchall() 展示全部内容
cursor.fetchone() 展示单行内容
cursor.fetchmany() 展示指定数量的行内容
一次性插入多行数据
res = [('aaa','111'),('bbb','222'),('ccc','333')]
sql = 'insert into userinfo(name,password) values(%s,%s)'
cursor.executemary(sql,res)
conn.commit() 确认此次操作可以执行
增
sql = 'insert into userinfo(name,password) values('tony',''123'')'
res = cursor.execute(sql)
conn.commit()
print(res)
改
sql1 = 'insert into userinfo set name=''park'' where id =1'
res = cursor.execute(sql1)
conn.commit()
print(res)
删
sql2 = 'delete from userinfo where id =1'
res = cursor.execute(sql2)
conn.commit()
print(res)
SQL注入
利用一些特殊符号搭配时具有一定的特殊功能来改变常规检验
1.只知道用户名就能进入
xxx --xxxxxxx
2.用户名和密码均不知道也能进入
xxx or 1=1 --xxxxxxxxx
将接收输入部分的格式从接收整个字段更改为接收各个元素
原格式
sql = ''select * from userinfo where name='%s' and password='%s' ''%(username,password)
print(sql)
更改后格式
sql = ''select * from userinfo where name=%s and password=%s''
res = cursor.execute(sql,[username,password])
用户登录注册函数
参考框架构造格式
虚拟环境
一台机器上可以有多个虚拟环境。可简单认为一个虚拟环境就是一个全新Python解释器
每个虚拟环境之间互相不干扰。
本机的环境下所有模块下载到本地即可。
虚拟环境的标志就是venv文件夹。虚拟环境不要在该文件夹内操作文件。