欢迎访问宙启技术站
智能推送

Python中db()方法实现数据库表的创建与删除

发布时间:2024-01-03 13:18:40

在Python中,我们可以使用db()方法来实现数据库表的创建和删除。db()方法是一个数据库操作的函数,它可以接收一个参数来确定是创建表还是删除表。

下面是一个示例代码,演示了如何使用db()方法创建和删除数据库表:

import sqlite3

# 创建数据库连接
conn = sqlite3.connect('test.db')

def db(operation):
    # 创建游标对象
    cursor = conn.cursor()
  
    if operation == 'create':
        # 创建表的SQL语句
        create_table_sql = '''
        CREATE TABLE IF NOT EXISTS employees (
            id INT PRIMARY KEY,
            name TEXT NOT NULL,
            age INT NOT NULL,
            address CHAR(50)
        );
        '''
        # 执行创建表操作
        cursor.execute(create_table_sql)
        print("Table created successfully.")

    elif operation == 'delete':
        # 删除表的SQL语句
        delete_table_sql = '''
        DROP TABLE IF EXISTS employees;
        '''
        # 执行删除表操作
        cursor.execute(delete_table_sql)
        print("Table deleted successfully.")

    # 提交事务
    conn.commit()
    # 关闭游标
    cursor.close()

# 创建表
db('create')

# 往表中插入数据
insert_sql = '''
INSERT INTO employees (id, name, age, address) VALUES (1, 'John', 30, '123 Main St');
'''
conn.execute(insert_sql)
conn.commit()

# 读取表中的数据
select_sql = '''
SELECT id, name, age, address from employees;
'''
result = conn.execute(select_sql)
for row in result:
    print("id = ", row[0])
    print("name = ", row[1])
    print("age = ", row[2])
    print("address = ", row[3])

# 删除表
db('delete')

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

在上述示例中,我们首先创建了一个名为test.db的SQLite数据库连接。然后定义了一个db()函数,该函数接收一个参数来确定是创建表还是删除表。

db()函数中,如果传入的参数是create,则执行创建表的SQL语句,并打印"Table created successfully.";如果传入的参数是delete,则执行删除表的SQL语句,并打印"Table deleted successfully."。最后,我们通过调用conn.execute()方法来插入数据和查询数据。

在示例中,我们创建了一个名为employees的表,并插入了一条数据。然后通过查询语句读取了表中的数据,并打印出来。最后,我们通过调用db()函数并传入delete参数,来删除表。

需要注意的是,上述示例使用的是SQLite数据库,如果你使用的是其他数据库,如MySQL或PostgreSQL,你需要根据对应数据库的要求修改连接方式和SQL语句。

总结起来,通过使用db()方法,我们可以很方便地实现数据库表的创建和删除,使得数据库操作更加简洁和可维护。