Python存储数据库教程–超详细!!

目录

1、首先导入需要用到的包

2、连接数据库

3、创建游标对象

4、创建名为 `dataname`的数据库,如果数据库不存在则创建,字符集设置为`utf8`。

5、执行sql1语句

6、创建数据表语句

1.如果名为`user_id`的数据表不存在,则创建一个名为 `user_tb` 的数据表

2.列定义

 7、执行sql2语句

8、设置需要存入数据库的字段

9、将数据插入`user_tb`数据表

10、执行sql3语句

11、提交事务

12、最后,关闭游标和数据库连接


1、首先导入需要用到的包

import pymysql

2、连接数据库

db = pymysql.connect(host="localhost",   # 连接主机地址
                     user="root",   # 登录数据库的用户名
                     passwd="123456",   # 数据库密码(这里输入你自己数据库的密码)
                     port=3306,   # 数据库端口号,MySQL默认端口是3306。
                     charset='utf8')   # 字符集,这里设置为utf8,以支持中文和其他字符。

3、创建游标对象

        在使用 pymysql 连接到数据库后,获取游标对象是进行数据库操作的第一步。游标对象允许你执行 SQL 查询并处理结果。

# 获取游标对象
cursor = db.cursor()

4、创建名为 `dataname`的数据库,如果数据库不存在则创建,字符集设置为`utf8`。

sql1 = 'create database if not exists dataname character set utf8;'

5、执行sql1语句

cursor.execute(sql1)

6、使用数据库,并执行语句

# 使用数据库
use_sql = "use dataname;"

# 执行use_sql 语句
cursor.execute(use_sql)

7、创建数据表语句

1.如果名为`user_id`的数据表不存在,则创建一个名为 `user_tb` 的数据表
2.列定义

   uname VARCHAR(255) NULL

  • uname: 列名,表示用户的名字。
  • VARCHAR(255): 数据类型,表示该列可以存储最大长度为 255 个字符的字符串。
  • NULL: 表示该列可以包含空值(即该列的值可以为 NULL)。如果你希望该列不能为空,可以将其改为 NOT NULL

  •  sex ENUM('male', 'female') NULL

  • sex: 列名,表示用户的性别。
  • ENUM('male', 'female'): 这是一个枚举类型,表示该列只能包含 'male' 或 'female' 这两个值中的一个。
  • NULL: 表示该列可以包含空值。如果你希望强制用户提供性别信息,可以将 NULL 改为 NOT NULL

  •  age INT NULL        

  • age: 列名,表示用户的年龄。
  • INT: 数据类型,表示该列存储整数值。
  • NULL: 表示该列可以包含空值。如果你希望年龄必须提供,可以将 NULL 改为 NOT NULL

  • sql2 = """create table if not exists user_tb(
    uname varchar(255) Null,
    sex_enum varchar(255) Null,
    age int Null
    )"""

     8、执行sql2语句

    cursor.execute(sql2)

    9、设置需要存入数据库的字段

    uname = '小明'
    sex_enum = '男'
    age = 20

    10、将数据插入`user_tb`数据表

    sql3 = f"""insert into user_tb(uname, sex_enum, age) values('{uname}','{sex_enum}','{age}')"""

    11、执行sql3语句

    cursor.execute(insert_tb)

    12、提交事务

            在你执行完 SQL 语句后,通常需要调用 db.commit() 来提交事务,以确保你的更改被永久保存到数据库中。commit() 方法用于将所有挂起的 SQL 语句提交到数据库,使其生效。

    db.commit()

    13、最后,关闭游标和数据库连接

    cursor.close()
    db.close()


    好啦~任务完成!

    最终代码如下:

    import pymysql
    
    # 连接数据库
    db = pymysql.connect(host="localhost",
                         user="root",
                         passwd="123456",
                         port=3306,
                         charset='utf8')
    # 获取游标对象
    cursor = db.cursor()
    
    # 创建数据库
    sql1 = "create database if not exists dataname character set utf8;"
    
    # 执行sql1语句
    cursor.execute(sql1)
    
    # 使用数据库
    use_sql = "use dataname;"
    
    # 执行sql1语句
    cursor.execute(use_sql)
    
    # 创建数据表
    sql2 = """create table if not exists user_tb(
            uname varchar(255) Null,
            sex_enum varchar(255) Null,
            age int Null
    )"""
    # 执行sql2语句
    cursor.execute(sql2)
    
    # 需要存入数据库的字段
    uname = '小明'
    sex_enum = '男'
    age = 20
    
    # 向表中插入数据
    sql3 = f"""insert into user_tb(uname, sex_enum, age) values('{uname}','{sex_enum}','{age}')"""
    # 通过游标执行语句
    cursor.execute(sql3)
    # 提交事务
    db.commit()
    
    # 关闭游标和数据库连接
    cursor.close()
    db.close()

    作者:小鞠..

    物联沃分享整理
    物联沃-IOTWORD物联网 » Python存储数据库教程–超详细!!

    发表回复