SQL的INSERT怎么可以一次插入多项数据?

要用INSERT插入多项数据(123,24,46);(546,546,66);(546,56,46)怎么用INSERT一次插入?

使用 INSERT 添加行
INSERT 语句可给表添加一个或多个新行。INSERT 语句在简单的情况下有如下形式:

INSERT [INTO] table_or_view [(column_list)] data_values

此语句将使 data_values 作为一行或者多行插入已命名的表或视图中。column_list 是由逗号分隔的列名列表,用来指定为其提供数据的列。如果没有指定 column_list,表或者视图中的所有列都将接收数据。

如果 column_list 没有为表或视图中的所有列命名,将在列表中没有命名的任何列中插入一个 NULL 值(或者在默认情况下为这些列定义的默认值)。在列的列表中没有指定的所有列都必须允许 null 值或者指定的默认值。

由于 Microsoft® SQL Server™ 为以下类型的列生成值,INSERT 语句将不为这些类型的列指定值:

具有 IDENTITY 属性的列,该属性为列生成值。

有默认值的列,该列用 NEWID 函数生成一个唯一的 GUID 值。

计算列。
这些是虚拟列,被定义为 CREATE TABLE 语句中从另外一列或多列计算的表达式,例如:

CREATE TABLE TestTable
(ColA INT PRIMARY KEY,
ColB INT NOT NULL,
ColC AS (ColA + ColB) * 2)

所提供的数据值必须与列的列表匹配。数据值的数目必须与列数相同,每个数据值的数据类型、精度和小数位数也必须与相应的列匹配。有两种方法指定数据值:

用 VALUES 子句为一行指定数据值:
INSERT INTO MyTable (PriKey, Description)
VALUES (123, 'A description of part 123.')

用 SELECT 子查询为一行或多行指定数据值。
INSERT INTO MyTable (PriKey, Description)
SELECT ForeignKey, Description
FROM SomeView
温馨提示:内容为网友见解,仅供参考
第1个回答  2006-06-01
INSERT VALUES语句一次只能插入一行数据。
要插入多个数据的话只能使用3次INSERT
另一重方法:带子查询语句,有一个前提,你那三项数据已经在一个表中了。
例:假设(123,24,46);(546,546,66);(546,56,46)是DAT1表里的数据,你想把他们放到DAT2表中,2个表结构相同(字段名1,字段名2,字段名3)
语句如下:
INSERT ALL
WHEN 字段名1=132 THEN INTO DAT2
WHEN 字段名1=546 THEN INTO DAT2
ELSE INTO OTHER
SELECT * FROM DAT1
以上语句把满足子查询条件的语句由表DAT1插到DAT2中了
第2个回答  2006-06-02
楼上说那么多有意思吗?一条语句搞定。
比如要向 table1表中的 a 、b、c三个字段插入数据,语句如下:

insert into table1 (a,b,c)
select 123,24,46
union all
select 546,546,66
union all
select 546,56,46

SQL的INSERT怎么可以一次插入多项数据?
INSERT 语句可给表添加一个或多个新行。INSERT 语句在简单的情况下有如下形式:INSERT [INTO] table_or_view [(column_list)] data_values 此语句将使 data_values 作为一行或者多行插入已命名的表或视图中。column_list 是由逗号分隔的列名列表,用来指定为其提供数据的列。如果没有指定 column_lis...

怎样在sqlserver中循环批量insert
1. 使用循环语句:SQL Server支持多种循环语句,如`WHILE`循环、`CURSOR`等。可以根据需要选择合适的循环结构。例如,如果要循环插入一系列数据,可以使用`WHILE`循环。2. 构造INSERT语句:在循环体内,使用INSERT语句将数据插入到目标表中。为了提高效率,可以一次性插入多行数据,即批量插入。这可以通过构...

如何实现一条sql语句插入多行数据
1. 通过从表2中选择特定条件下的数据,并将其插入到表1中,可以实现一条SQL语句插入多行数据。具体操作是使用以下SQL语句:```sql INSERT INTO tab1 (fld1, fld2, ..., fldn)SELECT field1, field2, ..., fieldn FROM tab2 WHERE xxxxx;```2. 另一种方法是直接在`INSERT`语句中提供...

向sql数据库中增加多条数据用sql命令怎么写急急急
这种方式只能够一次插入一条数据,要想插入多条数据,就得多次调用此sql语句,意味着多次与数据库建立连接。但是这样一来,就会增加服务器的负荷,因为,执行每一次SQL服务器都要同样对SQL进行分析、优化等操作。幸好MySQL提供了另一种解决方案,就是使用一条INSERT语句来插入多条记录。这并不是标准的SQL...

求sql怎么一次用insert 添加多条数据
用insert 添加多条数据:insert into 表1(列名) select 列名 from 表2 --主键要自增 对于主键不自增的也可以处理,如:建一张临时表,主键ID自增,然后取出要插入有的最大值,把最大值加到临时表ID上再用:insert into 表1(ID,列名) select ID,列名 from 表2 ...

求sql怎么一次用insert 添加多条数据
用insert 添加多条数据:insert into 表1(列名) select 列名 from 表2 --主键要自增 对于主键不自增的也可以处理,如:建一张临时表,主键ID自增,然后取出要插入有的最大值,把最大值加到临时表ID上再用:insert into 表1(ID,列名) select ID,列名 from 表2 insert into persons...

怎样在Sql server中循环批量insert
通过编写循环逻辑,逐条执行插入语句,以实现批量插入的目的。具体步骤如下:打开Visual Studio,连接到你的SQL Server数据库。 创建或打开一个C#项目,确保选择了与数据库交互的适当驱动程序(如ADO.NET)。 编写一个while循环,定义你的数据源(例如,一个数组或列表),并在循环中构建SQL INSERT语句...

请问在SQL Server中,SQL语句的Insert支持一次插入多条记录吗?
可以一次加入多条记录。在SQL SERVER里边,多个INSERT 语句之间,用分号(;)或者空格,隔开,这样数据库就认为你是在进行多条SQL语句的插入操作。就可以插入多条了。

求sql怎么一次用insert 添加多条数据
您好:您可以使用批量INSERT,语法如下 INSERT INTO 表名 (字段1,字段2,字段3,字段n)SELECT 字段1,字段2,字段3,字段n FROM 表 WHERE 条件

求sql怎么一次用insert 添加多条数据
--一条insert只能插入一行数据,除非你有一个相同数据类型的表需要复制表数据批量插入可以使用Insert into Table2(field1,field2,...) select value1,value2,... from Table1--要求目标表Table2必须存在,由于目标表Table2已经存在,所以我们除了插入源表Table1的字段外,还可以插入常量。

相似回答