2014-06-27 43 views
0

这个查询发送到oracle有什么问题?SQL错误:ORA-00904:无效的标识符 - 发送到oracle

这是我的代码:

manager.Insert("UPDATE WEDSTRIJD SET UITSLAG ='" + uitslag + "' WHERE WedstrijdNr =" + nummer2); 

这是派:

UPDATE WEDSTRIJD SET Uitslag = '21-2' WHERE WEDSTRIJDNR = 14; 

但我怎么可以改变什么?

我需要这个查询:

UPDATE WEDSTRIJD SET "Uitslag" = '21-2' WHERE "WedstrijdNr" = 14; 
+1

永远不要永远不要像这样用SQL查询来使用字符串连接。您要求成为[SQL注入](http://en.wikipedia.org/wiki/SQL_injection)的受害者。改用参数。请。 –

+0

请加ddl。 – Jens

+0

这是一个适合学校的小型项目,到现在为止要改变参数。但是,我知道你的意思。 – Rajco

回答

1

所以,问题是大写和小写,这就是为什么你需要的列名在引号?如果是这样,那么你应该在你的查询字符串中引用名称:

manager.Insert("UPDATE WEDSTRIJD SET \"Uitslag\" = '" + uitslag + "' WHERE \"WedstrijdNr\" = " + nummer2); 
+0

感谢您的回答,它不需要在引号中,但Oracle必须执行查询。尽管如此,上述不起作用。 – Rajco

+0

它不是完全创建你说你需要的查询吗?你会得到什么错误? –