我想从Oracle表中删除记录,然后使用sql命令和参数插入新记录,因为该值来自浏览器。使用Devart EF Drivers for Oracle执行SQL命令使用Devart EF Drivers for Oracle
这是代码:
var tableName = "<myTableName>";
context.Database.ExecuteSqlCommand("DELETE :p0", tableName);
甲骨文抛出 “ORA-00903:无效的表名”。
我也曾尝试:
context.Database.ExecuteSqlCommand("DELETE :p0", new OracleParameter("p0", OracleDbType.VarChar, 200, tableName, ParameterDirection.Input)
有一些简单的我失踪?
参数不能用于指定表名或列名。顺便说一下,SQL语法是DELETE FROM _tablename_ – Steve
好,那么我该如何做到这一点,以防止SQL注入? DELETE在SqlDeveloper中工作 –
samneric
您不让用户键入表名。您需要提供一张表格列表,并让他/她选择表格名称 – Steve