zoukankan      html  css  js  c++  java
  • python操作数据库步骤以及操作过程中经常出现的异常

    第一部分:dos窗口操作,创建相应数据库、表 

    1、进入mysql  :mysql -uroot -p

    2、查看所有数据库:show batabases;

    3、创建数据库:create batabase test;

    4、选择数据库: use test;

    5、创建user表: CREATE TABLE `user` (  `uid` INT PRIMARY KEY AUTO_INCREMENT,  `uname` VARCHAR(30) NOT    NULL,  `pwd` VARCHAR(30) NOT NULL);

    6、查看user表:desc user;

    7、添加user表参数[uname,pwd] : insert into user(uname,pwd)values('tom','123');

    异常示例:

    第二部分:编写相应脚本

    注意: pip install MySQLdb

    import MySQLdb

    db = MySQLdb.Connect('localhost', 'root', 'root', 'test', charset='utf8')
    # 使用 cursor() 方法创建一个游标对象cur
    cur = db.cursor() # 获取游标
    def select_sql(sql):

    # 使用 execute() 方法执行 SQL 查询
    cur.execute(sql)
    # 使用 fetchall() 方法获取查询结果
    data = cur.fetchall()
    print(data)
    # 关闭数据库连接
    db.close()

    def update_sql(sql):
    try:
    cur.execute(sql)
    db.commit()
    except Exception as e:
    print('操作异常:%s'%str(e))
    db.rollback()
    db.close()
    def select_sql2(sql):
    try:
    # 执行SQL语句
    cur.execute(sql)
    # 获取所有记录列表
    results = cur.fetchall()
    for row in results:
    uid = row[0]
    uname = row[1]
    pwd = row[2]
    # 打印结果
    print (uid, uname,pwd)
    except:
    print
    "Error: unable to fecth data"

    # 关闭数据库连接
    db.close()
    if __name__ == '__main__':
    sql1 = "insert into user(uname,pwd) values('jk4','123')"
    sql2 = "select * from user"
    sql3 = "select uname,pwd from user where uid=1"
    sql4 = "delete from user where uname='rows'"
    sql5 = "update user set pwd='666' where uname='jk3'"
    # update_sql(sql1)
    # select_sql(sql2)
    select_sql2(sql2)

    异常:

    TypeError: an integer is required (got type str) --- 添加charset='utf8'

  • 相关阅读:
    菜鸟涂鸦作品展_No.29
    菜鸟涂鸦作品展_No.27
    菜鸟涂鸦作品展_No.26
    关注的前沿动态
    货币转换
    第二周总结
    老鼠
    71 打印沙漏
    学习总结0.0
    第五周作业
  • 原文地址:https://www.cnblogs.com/c-jw/p/13806664.html
Copyright © 2011-2022 走看看