我是SQL新手,(使用SQL 2008 R2),我在将多行插入单个列时遇到问题。
我有一个名为Data
的表,这就是我正在尝试的
INSERT INTO Data ( Col1 ) VALUES
('Hello', 'World')
该代码取自this问题,但它与我在网上找到的许多其他示例一样使用了2列,我只想使用1.我做错了什么?
由于
答案 0 :(得分:35)
插入特定列的值,其他列保持不变: -
INSERT INTO `table_name`(col1,col2,col3)
VALUES (1,'val1',0),(1,'val2',0),(1,'val3',0)
答案 1 :(得分:24)
要仅插入一列,请仅使用一段数据:
INSERT INTO Data ( Col1 ) VALUES
('Hello World');
或者,要插入多个记录,请分隔插入内容:
INSERT INTO Data ( Col1 ) VALUES
('Hello'),
('World');
答案 2 :(得分:10)
我认为这应该适用于插入多行:
INSERT INTO Data ( Col1 ) VALUES
('Hello'), ('World'),...
答案 3 :(得分:8)
另一种方法是使用union:
INSERT INTO Data ( Col1 )
select 'hello'
union
select 'world'
答案 4 :(得分:5)
如果您的DBMS支持该表示法,则每行需要一组单独的括号:
INSERT INTO Data(Col1) VALUES ('Hello'), ('World');
交叉引用的问题显示了插入两列的示例。
或者,每个SQL DBMS都支持使用单独语句的表示法,每个语句要插入一行:
INSERT INTO Data (Col1) VALUES ('Hello');
INSERT INTO Data (Col1) VALUES ('World');
答案 5 :(得分:1)
INSERT INTO Data ( Col1 ) VALUES ('Hello'), ('World')
答案 6 :(得分:0)
在该代码中,您插入两个列值。 你可以试试这个
INSERT INTO Data ( Col1 ) VALUES ('Hello'),
INSERT INTO Data ( Col1 ) VALUES ('World')
答案 7 :(得分:0)
请确保其他列不受约束以接受Not null
值,因此在表中创建列时只需忽略“ Not Null”语法。例如
Create Table Table_Name(
col1 DataType,
col2 DataType);
然后,您可以在想要的任何列中插入多个行值。 例如:
Insert Into TableName(columnname)
values
(x),
(y),
(z);
以此类推...
希望这会有所帮助。
答案 8 :(得分:-3)
INSERT INTO hr.employees (location_id) VALUE (1000) WHERE first_name LIKE '%D%';
请告诉我此声明中是否有任何问题。