zoukankan      html  css  js  c++  java
  • Python结合sql登陆案例

    一、创建表

    用户表
    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 
    ' %(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("请输入用户名:
    ")
    password=input("请输入密码:
    ")
    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("用户名不存在")
    
  • 相关阅读:
    Python3.7安装PyQt5的方法
    安装MySQLdb for Python3.7
    在Python中操作谷歌浏览器
    Python 安装pyautogui
    Python 安装selenium
    Python 安装urllib3
    Python使用SMTP发送邮件
    使用Python定时执行一任务,自动登录某web系统,生成报表,然后发送邮件给指定人员
    AutoHotKey 使用ADODB读取Excel 报ADODB.Connection 未找到提供程序,可能未提供
    绘制一个网格的程序
  • 原文地址:https://www.cnblogs.com/endmoon/p/9557151.html
Copyright © 2011-2022 走看看