【发布时间】:2015-06-29 14:05:09
【问题描述】:
这行得通:
OracleCommand cm = con.CreateCommand();
cmd.CommandText = String.Format("select s,e from {0}" + ".DTREE where DATAID=:pDataId", credentialsthing.dbschema");
cmd.Parameters.Add("pDataId", objectx.theid);
但是...我也想把第一个放在参数命令中:
cmd.CommandText = "select s,e from :pPar1" + ".DTREE where DATAID=:pDataId");
cmd.Parameters.Add("pPar1", credentialsthing.dbschema);
cmd.Parameters.Add("pDataId", objectx.theid);
这失败了。为什么,语法应该是什么?
【问题讨论】:
-
坚持你的第一个代码示例。不能在
FROM子句中对表名进行参数绑定。 -
啊,是的,所以 CA2100 审查 SQL 查询是否存在安全漏洞很糟糕。代码分析 代码分析 代码分析 zzz。检查这个:stackoverflow.com/questions/19851722/…
标签: c# sql oracle parameters connection