Python SQLite 创建表
SQLite是一种轻量级的嵌入式关系型数据库,可以用于在Python程序中存储和管理数据。在本文中,我们将详细讨论如何使用Python操作SQLite数据库并创建表。
1. 安装sqlite3模块
首先,我们需要确保我们的Python环境中安装了sqlite3模块。大多数情况下,sqlite3模块已经默认安装在Python中。可以使用以下命令来检查是否已安装:
import sqlite3
print(sqlite3.version) # 打印sqlite3模块的版本
如果输出为模块的版本号,则表示已经安装。
2. 连接到数据库
在操作SQLite数据库之前,我们需要创建一个数据库连接。可以使用connect()方法来创建连接,该方法需要传入数据库文件的路径作为参数。如果指定的数据库文件不存在,则会自动创建一个新的数据库文件。
import sqlite3
conn = sqlite3.connect('mydatabase.db')
在上面的示例中,我们使用connect()方法创建连接并传入文件名为’mydatabase.db’的数据库。
3. 创建数据表
创建数据库连接后,我们可以使用execute()方法执行SQL语句来创建表。在SQLite中,可以使用CREATE TABLE语句来创建表。
import sqlite3
# 创建连接
conn = sqlite3.connect('mydatabase.db')
# 创建游标
cursor = conn.cursor()
# 创建表
cursor.execute('''
CREATE TABLE IF NOT EXISTS students (
id INTEGER PRIMARY KEY,
name TEXT NOT NULL,
age INTEGER NOT NULL
)
''')
# 提交事务
conn.commit()
# 关闭连接
conn.close()
在上面的示例中,我们创建了一个名为’students’的表,该表包含3个字段:id、name和age。其中,id字段为整数类型的主键,name字段为文本类型且不能为空,age字段为整数类型且不能为空。
需要注意的是,我们必须在CREATE TABLE语句后面的方括号中指定字段的属性,例如:字段名、数据类型和约束条件。在上面的示例中,我们使用了INTEGER、TEXT和NOT NULL等字段属性。
4. 查询表结构
通过使用SQLite的系统表sqlite_master,我们可以查询数据库中所有表的结构信息,包括字段名、数据类型和约束条件。可以使用SELECT语句从sqlite_master表中查询表的结构信息。
import sqlite3
# 创建连接
conn = sqlite3.connect('mydatabase.db')
# 创建游标
cursor = conn.cursor()
# 查询表结构
cursor.execute('SELECT sql FROM sqlite_master WHERE type="table" AND name="students"')
result = cursor.fetchone()
# 打印结果
print(result[0])
# 关闭连接
conn.close()
上面的代码中,我们使用SELECT语句从sqlite_master表中查询名为’students’的表的结构信息,并使用fetchone()方法获取第一条结果。最后,我们将查询结果打印输出。
5. 示例代码运行结果
运行上述代码后,可以得到以下结果:
CREATE TABLE IF NOT EXISTS students (
id INTEGER PRIMARY KEY,
name TEXT NOT NULL,
age INTEGER NOT NULL
)
以上就是使用Python操作SQLite数据库并创建表的详细说明。通过这些步骤,我们可以轻松地在Python程序中创建和管理SQLite数据库中的表格数据。