请参阅下面的DDL:SQL值是否包含换行符?
CREATE TABLE SQLTestTable (sqltest VARCHAR(100))
INSERT INTO SQLTestTable (sqltest) values ('INSERT INTO Person VALUES (''SELECT * FROM PERSON --THIS IS A TEST WHERE ID=1'')')
INSERT INTO SQLTestTable (sqltest) values ('INSERT INTO Person VALUES (
''SELECT * FROM --THIS IS A TEST
PERSON WHERE ID=1'')')
注意,在第一个INSERT语句它是所有在同一行,而在INSERT语句包含两个事实并非如此。如果我将sqltest值提取到SQLCommand.CommandText中并执行SQLCommand,则它适用于第二次插入,但不适用于第一次插入,即第一次插入不起作用,因为该注释会导致语法错误。是否为第二次插入以某种方式存储在数据库中的换行符?
你知道你可以用'/ *注释* /'无需换行吗? –
什么是语法错误? –
@DanBracuk当他试图执行'INSERT INTO人VALUES(“” SELECT * FROM PERSON --...'出现的语法错误。OP不问为什么发生这种情况,但第二个值被而如何存储,因为它包括这个行代码是为了形成有效的SQL – Taemyr