-2

我正在使用 excel 连接来生成 SQL 插入语句,但我发现很难为以下 SQL 值定义连接...有人可以建议吗?关于串联公式要使用?

VALUES ( 
NEWID(),'ABC', 'ABC', 'ABC', 'abc', 'abc', 'abc', NULL,  CONVERT(datetime, '1999/01/01',     101)
,  CONVERT(datetime, '1999/12/31', 101), 1, 0, 1, LOWER(NEWID())
, 'abc',  getdate(), 'system'
,  getdate());
4

2 回答 2

0

如果 Excel 试图解释/评估您的 SQL 函数,那么您可能对这种方法不走运。

尝试在存储过程中设置插入 SQL,然后让您的 excel 文件生成存储过程调用。像这样的东西:

spInsertRecord('ABC', 'ABC', 'ABC', 'abc', 'abc', 'abc', NULL,... etc)

这样,您就不会遇到对嵌入式命令的误解的任何问题。

希望这可以帮助。

于 2012-10-17T19:35:24.573 回答
0
="INSERT SOMETABLE VALUES ( \
NEWID(),'" & A2 & "', '" & B2 & "', 'ABC', 'abc', 'abc', 'abc', NULL, \
CONVERT(datetime, '1999/01/01',     101) \
,  CONVERT(datetime, '1999/12/31', 101), 1, 0, 1, LOWER(NEWID()) \
, 'abc',  getdate(), 'system' \
,  getdate());"

注意:当您\在上面看到时,这意味着该行连接到下一行。整个公式应该在一行上。

我已将“ABC”的前两个固定值替换为工作表A2B2的单元格,例如,您可能在 中包含此公式X2,您可以将其复制下来。如果您的单元格值本身可以包含单引号,则它会变得更加复杂,您需要添加 SUBSTITUTE 以将它们加倍。例如

="INSERT SOMETABLE VALUES ( \
NEWID(),'" & SUBSTITUTE(A2,"'","''") & "', '" & B2 & "', 'ABC', 'abc', 'abc', 'abc', NULL, \
于 2012-10-17T21:18:13.643 回答