我在SQL脚本中编写了一个查询(在Unix系统上运行),我必须在名为'funcs'的列中的表中插入几行,并插入我插入的函数的名称此列必须全部在新行中(如下所示):
func1()
func2()
我在这里面临的问题是,有一些函数以#func3()之类的'#'开头,我的查询如下所示:
INSERT INTO TABLE (FUNCS)
VALUE ( 'func1()
func2()
#func3()
func4()
#func5()'
);
当我在WinSQL应用程序中执行上述查询时,它执行正常,但在脚本中执行上述查询时出现以下错误:
unknown command beginning "func3..." - rest of line ignored.
unknown command beginning "func5..." - rest of line ignored.
结果最后我只能在这个字段中看到func1(),func2()和func4(),而#func3()和#func5()被忽略。
因此,我只能想到两个解决方案:
如果我可以告诉编译器不要像通常那样考虑带有'#'的语句,那么可以实现; 或
如果我可以在一行中写下所有函数的名称,用这样的换行符分隔它们:
'func1()[newline char] func2()[newline char] #func3()[newline char] func4()[newline char] #func5()'。
请告诉我如何解决这个问题。
答案 0 :(得分:0)
我能够通过以下方式更改插入查询来解决此问题:
insert into table (funcs)
values('func1()'||
'func2()'||
'#func3()'||
'func4()'||
'#func5()');