Python结合sql登陆案例

it2022-05-26  71

一、创建表

用户表 1.主键 user_id int 2. 用户名 varchar 3. 密码 varchar 4. phone char(11) 5. email varchar 6. is_delete int 地址表 主键 aid city detail 详细地址

1.创建用户表

create table user( user_id int(4) primary key auto_increment, -- 创建主键(主表) username varchar(64), password varchar(64), phone char(11), email varchar(100), is_delete int(1) -- 0表示正常,1表示删除 )

2.插入用户信息

insert into user (username,password,phone,email,is_delete) values('tom','123456','88888888888','test@163.com',0)

3.查询用户信息

select * from user where username='tom' and password='123456'

4.创建地址表

create table address( aid int(4) primary key auto_increment, -- 创建主键 city varchar(64), detail varchar(64), create_date datetime, is_delete int(1), -- 设置假删除 user_id int(4) not null, -- 设置主键不为空 constraint fk_address_userid foreign key(user_id) references user(user_id) -- 将userid作为主表外键 )

5.插入地址信息

insert into address (city,detail,user_id,is_delete,create_date) values('x市','xx街道x栋x楼',1,0, str_to_date('2018-08-08 12:12:12','%Y-%m-%d %H:%i:%s

6.查询地址信息

select * from address where user_id=1

二、使用python处理数据库

1.安装PYTHON插件

pip install pymysql pip install pymysql -i http://pypi.douban.com/simple

2.建立数据库连接

import pymysql #导入pymysql PORT = 3306 #数据库端口 HOST = '127.0.0.1' #数据库服务地址 USER = 'root' #数据库用户 PASSWORD = 'root' #数据库密码 DB_NAME = 'demo1' #数据库名称 conn = pymysql.connect(host=HOST,user=USER,port=PORT,password=PASSWORD,db=DB_NAME)

3.创建游标对象

cursor = conn.cursor()

4.执行SQL语句

sql = 'select username,user_id,password,email from user' #执行sql语句 cursor.execute(sql)

5.操作SQL语句

results=cursor.fetchall() #获取查询的所有数据(每行数据为一个对象,每行数据包含多个属性) for result in results: print('用户名:%s 用户ID:%s 用户密码:%s email:%s \n' %(result[0],result[1],result[2],result[3]))

6.释放资源

cursor.close() conn.close()

7.判断用户输入是否正确

import pymysql PORT = 3306 HOST = '127.0.0.1' USER = 'root' PASSWORD = 'root' DB_NAME = 'demo1' username=input("请输入用户名:\n") password=input("请输入密码:\n") with pymysql.connect(host=HOST, user=USER, port=PORT, password=PASSWORD, db=DB_NAME).cursor() as cursor: sql = "SELECT * FROM user WHERE username='%s'" % (username) cursor.execute(sql) results=cursor.fetchall() #results=((第一行数据:username,user_id,password),(第一行数据:username,user_id,password)) if results: if results[0][2]==password: print("登陆成功") print("欢迎来到首页") else: print("密码错误") else: print("用户名不存在")

转载于:https://www.cnblogs.com/endmoon/p/9557151.html


最新回复(0)