2012-05-31 35 views
1

预言:如何到Excel 创建一个非常长的INSERT SQL提示Excel中给出了:你的SQL是非常大的,使用连击功能如何到Excel中创建一个非常长的INSERT SQL

PLZ指导我该怎么办这

例如

="insert into customers(20 columns one after another) values('" &B3 &"','" & C3 & "','"&D3&"'.........20th value); 
+0

用光标不能实现这个吗?或者某种批处理? – Robbie

回答

0

使用Excel CONCATENATE函数,而不是串联符号&的。

=CONCATENATE("insert into customers(20 columns one after another) values('", B3, "','", C3, "','", D3, "'.........20th value") 
+0

谢谢您的回复......最后一个问题 –

+0

CONCATENATE(“插入客户(20列)一个接一个的值('',B3,'','”,C3,'','“,D3,'' .........“,T2,”')“); –

+0

将这项工作...或PLZ指导我 –

1

有了这些值在Excel表:

A1 = INSERT INTO mytable(id, col2, col3, col4, col5) VALUES (' 
A2 = '',' 

和数据A4:E4,像这样:

A4 = testID 
B4 = value 
C4 = value2 
D4 = value3 
E4 = value4 

你可以建立这样的另一列:

G4 = =CONCATENATE($A$1,A4,$A$2,B4,$A$2,C4,$A$2,D4,$A$2,E4,"');") 

其中评估为:

INSERT INTO mytable(id, col2, col3, col4, col5) VALUES ('testID','value','value2','value3','value4'); 

使用的引用使得添加在将来更容易附加列,因为你不必记得要“向下填充”式文本的整列您进行更改后。

+0

一个问题...... excel弹出可能会出现,因为列名称(总共20)是35个字符each..summing多达35 * 20个字符 –

+0

'CONCATENATE'将最多支持255个文本字符串,所以如果您的列数超过126列(因为每列需要每列值和引号/逗号),您需要分别构建该语句。单元格中的输出没有限制,只要不超过文本限制,Excel 2010就有32,767个字符,这对SQL INSERT语句不应该是问题! –

+0

这非常容易使用... – subodh1989

相关问题