一、创建表
用户表
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("用户名不存在")