日期:2014-05-17  浏览次数:20440 次

连接ORACLE参数化的问题
我这样写
  OracleParameter[] parms = 
{
 
                DbHelper.InParam("@year_month", OracleDbType.Varchar2,20, year_month),
                DbHelper.InParam("@town_id", OracleDbType.Long,0, town_id ),
                DbHelper.InParam("@hosp_id", OracleDbType.Long,0, hosp_id )
 
};
 另外具体再接受
 OracleParameter param = new OracleParameter(ParamName, dbType);
我这样写有什么好处?什么是参数化。

------解决方案--------------------
http://www.docin.com/p-53832609.html

里面挺细的
------解决方案--------------------
引用:
引用:oracle参数用冒号
OracleParameter[] parms = 
{
 
                DbHelper.InParam(":year_month", OracleDbType.Varchar2,20, year_month),
 
};
 额,可是我,这样也跑的起来。好像@这个符号……

不同的数据库服务器sql语句中参数的占位符不同,上面用的是oracle,参数占位符是冒号(:)加名字,在sqlserver中是用@符号加名字作为占位符,而在mysql中用问号(?)加名字来作为参数占位符,不同的数据库中参数的表示符号不一样