使用INSERT INTO语句将一个表的数据复制到另一个表中,或者使用SELECT INTO语句创建新表并插入数据。
SQL Server复制表数据的方法
使用SELECT INTO语句复制表数据
1、语法:
```sql
SELECT * INTO 目标表 FROM 源表;
```
2、示例:
```sql
SELECT * INTO 新表 FROM 旧表;
```
3、说明:
目标表是将要创建的新表,其结构和源表相同。
源表是要复制数据的现有表。
执行该语句后,新表中将包含源表的所有数据。
使用INSERT INTO语句复制表数据
1、语法:
```sql
INSERT INTO 目标表 (列1, 列2, ...)
SELECT 列1, 列2, ... FROM 源表;
```
2、示例:
```sql
INSERT INTO 新表 (字段1, 字段2, ...)
SELECT 字段1, 字段2, ... FROM 旧表;
```
3、说明:
目标表是要插入数据的现有表。
源表是要复制数据的现有表。
执行该语句后,目标表中将包含源表指定列的数据。
使用BULK INSERT语句复制表数据(适用于大量数据)
1、语法:
```sql
BULK INSERT 目标表 FROM '源文件路径'
WITH (FIELDTERMINATOR = '字段分隔符', ROWTERMINATOR = '行分隔符');
```
2、示例:
```sql
BULK INSERT 新表 FROM 'C:\data\旧表.csv'
WITH (FIELDTERMINATOR = ',', ROWTERMINATOR = '
');
```
3、说明:
目标表是要插入数据的现有表。
源文件路径是包含要复制数据的CSV文件的路径。
FIELDTERMINATOR和ROWTERMINATOR分别指定字段和行的分隔符。
相关问题与解答:
问题1:如何复制一个表中的部分列数据到另一个表中?
解答:可以使用SELECT INTO或INSERT INTO语句,并指定要复制的列名。SELECT column1, column2 INTO new_table FROM old_table;
或INSERT INTO new_table (column1, column2) SELECT column1, column2 FROM old_table;
。
问题2:如何使用BULK INSERT语句复制多个文件的数据到同一个表中?
解答:可以使用BULK INSERT语句结合通配符来复制多个文件中的数据,`BULK INSERT table_name FROM 'path\*.csv' WITH (FIELDTERMINATOR = ',', ROWTERMINATOR = '
');`,这将复制指定路径下所有CSV文件中的数据到表中。
原创文章,作者:K-seo,如若转载,请注明出处:https://www.kdun.cn/ask/491338.html