如何在SQL Sever中的表中插入数据
时间: 2025-01-28 10:28:18 浏览: 31
在SQL Server中插入数据到表中的方法有多种,以下是几种常见的方式:
1. 使用INSERT INTO语句:
这是最常用的方法,可以插入单行或多行数据。
语法:
```sql
INSERT INTO 表名 (列1, 列2, 列3, ...)
VALUES (值1, 值2, 值3, ...);
```
示例:
```sql
INSERT INTO Employees (FirstName, LastName, Age)
VALUES ('John', 'Doe', 30);
```
2. 使用SELECT语句插入多行数据:
这种方法可以从一个表中选择数据并插入到另一个表中。
语法:
```sql
INSERT INTO 目标表 (列1, 列2, ...)
SELECT 列1, 列2, ...
FROM 源表
WHERE 条件;
```
示例:
```sql
INSERT INTO NewEmployees (FirstName, LastName, Age)
SELECT FirstName, LastName, Age
FROM Employees
WHERE HireDate > '2023-01-01';
```
3. 使用DEFAULT VALUES:
如果表中的所有列都允许NULL默认值,可以使用这个语句。
语法:
```sql
INSERT INTO 表名 DEFAULT VALUES;
```
示例:
```sql
INSERT INTO Employees DEFAULT VALUES;
```
4. 使用INSERT INTO...EXEC:
这种方法可以用来执行存储过程,并将结果插入到表中。
语法:
```sql
INSERT INTO 表名 (列1, 列2, ...)
EXEC 存储过程名 参数;
```
示例:
```sql
INSERT INTO EmployeeReport (EmployeeID, ReportData)
EXEC GetEmployeeReport @EmployeeID = 123;
```
5. 使用BULK INSERT:
对于大量数据,可以使用BULK INSERT语句从文件导入数据。
语法:
```sql
BULK INSERT 表名
FROM '文件路径'
WITH (
FIELDTERMINATOR = ',',
ROWTERMINATOR = '\n'
);
```
示例:
```sql
BULK INSERT Employees
FROM 'C:\Data\Employees.txt'
WITH (
FIELDTERMINATOR = ',',
ROWTERMINATOR = '\n'
);
```
这些方法可以根据具体的需求和数据量来选择使用。在实际应用中,可能还需要考虑事务处理、数据验证和错误处理等因素。
阅读全文
相关推荐


















