Python连接mysql数据库

环境

方式一

我们可以通过命令行来完成pymysql这个库的安装.

pip3 install pymysql   
方式二

在PyCharm中完成pymysql库的安装。
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
最后,完成安装即可。

数据库连接

数据库创建

通过图像化界面,建立连接,在连接中创建数据库,在数据库当中在建立起相应的表。
在这里插入图片描述
注释,可以帮助理解内容

import pymysql    # 导入pymysql这个库



try:
    
    # 打开数据库连接
db = pymysql.connect(host='localhost',   # 连接名称
                     user='root',  # 用户名称
                     password='',  # 密码
                     database='')  # 数据库名称

print('数据库连接成功')   # 给出提示


except Exception as e:    #  捕获异常
    # 如果发生错误则回滚
    db.rollback()
    print('出错了')
    print(e)


# 关闭数据库连接
db.close()

创建一张表

注释,可以帮助理解内容

import pymysql


# 打开数据库连接
db = pymysql.connect(host='localhost',  # 连接名称
                     user='root',  # 用户名称
                     password='',  # 密码
                     database='') # 数据库名称

print('数据库连接成功')

# 使用cursor()方法获取操作游标
cursor = db.cursor()

# 使用 execute() 方法执行 SQL,如果表存在则删除
cursor.execute("DROP TABLE IF EXISTS EMPLOYEE")


# SQL 插入语句
sql = """CREATE TABLE EMPLOYEE (
         FIRST_NAME  CHAR(20) NOT NULL,
         LAST_NAME  CHAR(20),
         AGE INT,  
         SEX CHAR(1),
         INCOME FLOAT )"""   #这里可以写要创建的表名,表下面的一些字段,每个字段的数据类型

try:
    # 执行sql语句
    cursor.execute(sql)




except Exception as e:
    # 如果发生错误则回滚
    db.rollback()
    print('创建表失败')
    print(e)


# 关闭数据库连接
db.close()

插入数据

注释,可以帮助理解内容

import pymysql

# 打开数据库连接
db = pymysql.connect(host='localhost',
                     user='root',
                     password='',
                     database='')

print('数据库连接成功')

# 使用cursor()方法获取操作游标
cursor = db.cursor()

# SQL 插入语句,主要的标识是insert,可以将字段名和相应的值一一的对应起来。
sql = """insert into 表名(字段1,字段2, 字段3,.....) values ('值1','值2','值3'....)"""    

try:
    # 执行sql语句
    cursor.execute(sql)

    # 提交到数据库执行
    db.commit()
    print('数据插入成功')

except Exception as e:
    # 如果发生错误则回滚
    db.rollback()
    print('出错了')
    print(e)


# 关闭数据库连接
db.close()

查询表中的数据

注释,可以帮助理解内容

查询EMPLOYEE表中salary(工资)字段大于1000的所有数据

import pymysql
 
# 打开数据库连接
db = pymysql.connect(host='localhost',
                     user='root',
                     password='',
                     database='')
 
# 使用cursor()方法获取操作游标 
cursor = db.cursor()
 
# SQL 查询语句,主要的标识是selelct,* 表示查询这个表中所有字段的数据,where后面则是对查询数据的一个限定条件,我们也可以只查询个别字段的数据内容。
sql = "SELECT * FROM EMPLOYEE \
       WHERE INCOME > %s" % (1000)
try:
   # 执行SQL语句
   cursor.execute(sql)
   # 获取所有记录列表
   results = cursor.fetchall()
   # 通过循环的方式,将每一个字段的结果输入到数组中
   for row in results:
      fname = row[0]
      lname = row[1]
      age = row[2]
      sex = row[3]
      income = row[4]
       # 打印结果
      print ("fname=%s,lname=%s,age=%s,sex=%s,income=%s" % \
             (fname, lname, age, sex, income ))   
except:
   print ("Error: unable to fetch data")
   # 报错标识
 
# 关闭数据库连接
db.close()

更新表中数据

注释,可以帮助理解内容

#SEX 为 'M' 的 AGE 字段递增 1

import pymysql
 
# 打开数据库连接
db = pymysql.connect(host='localhost',
                     user='root',
                     password='',
                     database='')
 
# 使用cursor()方法获取操作游标 
cursor = db.cursor()
 
# SQL 更新语句,主要的标识是update、set,修改相应表中的数据,可以给要修改的字段赋予新的值。

sql = "UPDATE EMPLOYEE SET AGE = AGE + 1 WHERE SEX = '%c'" % ('M')
try:
   # 执行SQL语句
   cursor.execute(sql)
   # 提交到数据库执行
   db.commit()
except:
   # 发生错误时回滚
   db.rollback()
 
# 关闭数据库连接
db.close()

删除表中数据

注释,可以帮助理解内容


#  删除数据表 EMPLOYEE 中 AGE 大于 20 的所有数据

import pymysql
 
# 打开数据库连接
db = pymysql.connect(host='localhost',
                     user='testuser',
                     password='test123',
                     database='TESTDB')
 
# 使用cursor()方法获取操作游标 
cursor = db.cursor()
 
# SQL 删除语句,主要的标识是delete,设定一些要删除的限制条件
sql = "DELETE FROM EMPLOYEE WHERE AGE > %s" % (20)
try:
   # 执行SQL语句
   cursor.execute(sql)
   # 提交修改
   db.commit()
except:
   # 发生错误时回滚
   db.rollback()
 
# 关闭连接
db.close()

删除一张表

注释,可以帮助理解内容

import pymysql

#如果sql语句中的表存在,就将其删除掉

# 打开数据库连接
db = pymysql.connect(host='localhost',
                     user='root',
                     password='baizhihao',
                     database='pymysql')

print('数据库连接成功')

# 使用cursor()方法获取操作游标
cursor = db.cursor()


# SQL 删除语句,这里的标识是drop
sql = """DROP TABLE IF EXISTS EMPLOYEE"""

try:
    # 执行sql语句
    cursor.execute(sql)




except Exception as e:
    # 如果发生错误则回滚
    db.rollback()
    print('创建表失败')
    print(e)


# 关闭数据库连接
db.close()
  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值