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()

你可能感兴趣的:(数据库,Python爬虫,python,数据库,mysql)