Python深度培训笔记六

目录

Python连接数据库实现数据插入、查询、修改、删除

一、.连接数据库

二、创建表

三、插入数据

四、查询数据

五、更改表中数据

六、删除表中数据

七、删除一张表


Python连接数据库实现数据插入、查询、修改、删除

一、.连接数据库

1.导包

import pymysql

2.连接数据库,捕获异常

#创建数据库链接
DBHOST = 'localhost'
DBUSER = 'root' #用户名
DBPASS = 'password' #密码
DBNAME = 'dxnpython' #数据库名
try:
    db = pymysql.connect(host=DBHOST,user=DBUSER, password=DBPASS, database=DBNAME)
    print('数据库连接成功!')
except pymysql.Error as e:
    print('数据库连接失败'+str(e))

二、创建表

1、声明一个游标

cur = db.cursor()

2、创建表之前先检查是否存在,如果存在则删除

cur.execute('DROP TABLE IF EXISTS Student')

3、编辑sql语句

sqlQuery = "CREATE TABLE Student(Name CHAR(20) NOT NULL ,Email CHAR(20),Age int )"

cur.execute(sqlQuery)

三、插入数据

1.编辑sql语句

sqlQuery=" INSERT INTO Student (Name, Email, Age) VALUE (%s,%s,%s) "

2.插入值

value=('Mike','123456@163.com',20)

3.sql执行语句

try:
    cur.execute(sqlQuery,value)
    db.commit()
    print('数据插入成功!')
except pymysql.Error as e:
    print("数据插入失败:"+e )
    db.rollback()

四、查询数据

1、编辑sql语句

sqlQuery = "SELECT * FROM Student"

2、使用fetchall()方法接收全部的返回结果行

try:
    cur.execute(sqlQuery)
    results=cur.fetchall()
    for row in results:
        name=row[0]
        email=row[1]
        age=row[2]
        print('Name:%s,Email:%s,Age:%s'%(name,email,age))
except pymysql.Error as e:
    print("数据查询失败:"+str(e))


 

五、更改表中数据

1、编辑sql语句

sqlQuery = "UPDATE Student SET Name= %s WHERE Name=%s"

2、编辑更新的信息

value = ('John', 'updated name')


3、提交修改

try:
    cur.execute(sqlQuery, value)
    db.commit()
    print('数据更新成功!')
except pymysql.Error as e:
    print("数据更新失败:"+str(e))
    # 发生错误时回滚
    db.rollback()


 

六、删除表中数据

1、编辑sql语句

sqlQuery = "DELETE FROM Student where Name=%s"


2、编辑更新的信息

value = ('John')


3、提交修改

try:
    cur.execute(sqlQuery, value)
    db.commit()
    print('Date Deleted Successfully')
except pymysql.Error as e:
    print("数据删除失败:"+str(e))
    # 发生错误时回滚
    db.rollback()

七、删除一张表

1、编辑sql语句

​
sqlQuery='DROP TABLE IF EXISTS Student'

​

2、提交修改

cur.execute(sqlQuery)

print('表删除成功!')

学习资料:

Python连接MySQL数据库【趣学Python】_哔哩哔哩_bilibili

上一篇:Android-日常开发总结的技术经验,这些知识你必须拿下


下一篇:一直想做前端工程师的后端程序员