📅  最后修改于: 2023-12-03 15:39:51.751000             🧑  作者: Mango
在编写数据库应用程序时,插入数据是一个非常基础和重要的操作。本文将介绍如何使用 SQL 和一些编程语言来插入数据。
首先,我们来看一下在 SQL 中如何插入数据。假设我们有一个 users
表,其中包含 id
和 name
两个字段。
要插入一条数据,可以使用 INSERT INTO
语句:
INSERT INTO users (id, name) VALUES (1, 'Alice');
这个语句会在 users
表中插入一条记录,其 id
为 1,name
为 "Alice"。
要插入多条数据,可以使用如下语法:
INSERT INTO users (id, name)
VALUES (1, 'Alice'), (2, 'Bob'), (3, 'Charlie');
这个语句会在 users
表中插入三条记录,分别为 (1, 'Alice')
、(2, 'Bob')
和 (3, 'Charlie')
。
下面我们来看一下在 Python 中如何插入数据。我们假设已经连接到一个 SQLite 数据库,并且定义了一个 User
类型来表示一个用户。
import sqlite3
class User:
def __init__(self, id, name):
self.id = id
self.name = name
def __repr__(self):
return f"<User {self.id}: {self.name}>"
要插入一条数据,可以使用 INSERT INTO
语句和参数化查询:
def insert_user(user):
with sqlite3.connect("mydatabase.db") as conn:
c = conn.cursor()
c.execute("INSERT INTO users (id, name) VALUES (?, ?)", (user.id, user.name))
conn.commit()
要插入多条数据,可以使用 SQL 的语法和 Python 里的循环:
def insert_users(users):
with sqlite3.connect("mydatabase.db") as conn:
c = conn.cursor()
values = [(u.id, u.name) for u in users]
c.executemany("INSERT INTO users (id, name) VALUES (?, ?)", values)
conn.commit()
插入数据是编写数据库应用程序时的基础操作之一。无论是在 SQL 还是在编程语言中,了解如何插入数据都是非常必要的。