在SQL中,向表中插入数据是通过INSERT INTO
语句来实现的。这个语句允许你指定要插入数据的表名以及要插入数据的列。然后,你可以提供一个值列表,这些值将按照指定的顺序插入到相应的列中。
以下是一个基本的INSERT INTO
语句的示例,它向employees
表中插入了一行新数据:
INSERT INTO employees (employee_id, first_name, last_name, hire_date, salary)
VALUES (1, 'John', 'Doe', '2023-01-15', 50000.00);
在这个例子中:
employees
是目标表的名称。- 括号内的
employee_id, first_name, last_name, hire_date, salary
指定了要插入数据的列。 VALUES
关键字后面跟着的是一个值列表,这些值将按照前面指定的列的顺序插入到表中。
如果你不想为所有列提供值,并且表中的某些列有默认值或者允许NULL值,你可以省略这些列。但是,你必须确保提供的值的顺序与表中列的顺序相匹配(除非你明确指定了列名),并且为没有提供值的列提供了默认值或允许它们为NULL。
例如,如果salary
列有默认值,并且你希望在插入新行时不指定它,你可以这样写:
INSERT INTO employees (employee_id, first_name, last_name, hire_date)
VALUES (2, 'Jane', 'Smith', '2023-02-20');
在这个例子中,salary
列将使用其默认值(如果有的话),或者如果它允许NULL值,则它将为NULL。
另外,如果你想要一次插入多行数据,你可以使用以下的语法,其中每个值集都用逗号分隔,并且整个值列表用括号括起来:
INSERT INTO employees (employee_id, first_name, last_name, hire_date, salary)
VALUES
(3, 'Alice', 'Johnson', '2023-03-10', 60000.00),
(4, 'Bob', 'Brown', '2023-04-15', 55000.00);
在这个例子中,两行新数据被同时插入到employees
表中。