国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

OleDbCommand使用參數應該注意的地方

2019-11-17 03:11:28
字體:
來源:轉載
供稿:網友

OleDbCommand使用參數應該注意的地方

最近寫程序用到OleDbCommand的Parameter寫數據庫,遇到很多問題:

1、OLE DB .NET Framework 數據提供程序和 ODBC .NET Framework 數據提供程序不支持用于將參數傳遞到 SQL 語句或存儲過程的命名參數。在此情況下,必須使用問號 (?) 占位符,如以下示例所示。SELECT * FROM Customers WHERE CustomerID = ?

2、將參數用于OleDbCommand 或 OdbcCommand 時,向 Parameters 集合中添加參數的順序必須與存儲過程中所定義的參數順序相匹配。OLE DB .NET Framework 數據提供程序和 ODBC .NET Framework 數據提供程序將存儲過程中的參數視為占位符,并且將按順序使用這些參數值。另外,返回值參數必須是添加到 Parameters 集合中的第一批參數。因此,向 Parameters 集合添加 Parameter 對象的順序必須直接對應于該參數的問號占位符的位置

例如:

string sql = "insert into T_Fundratesum(fundcode,yhcode,sumdate,period,m12brate,m12rrate,createtimestamp) values (?,?,?,?,?,?,?)"; OleDbCommand comm = new OleDbCommand(sql, conn); comm.Parameters.Add(new OleDbParameter("@fundcode", OleDbType.VarChar)); comm.Parameters[0].Value = dt.Rows[i]["yhcode"].ToString(); comm.Parameters.Add(new OleDbParameter("@yhcode", OleDbType.VarChar)); comm.Parameters[1].Value = dt.Rows[i]["fundcode"].ToString(); comm.Parameters.Add(new OleDbParameter("@sumdate", OleDbType.Date)); comm.Parameters[2].Value = DateTime.Now.ToString(); comm.Parameters.Add(new OleDbParameter("@PERIOD", OleDbType.Double)); comm.Parameters[3].Value = dt.Rows[i]["PERIOD"]; comm.Parameters.Add(new OleDbParameter("@M12BRATE", OleDbType.Double)); comm.Parameters[4].Value = dt.Rows[i]["M12BRATE"]; comm.Parameters.Add(new OleDbParameter("@M12RRATE", OleDbType.Double)); comm.Parameters[5].Value = dt.Rows[i]["M12RRATE"]; comm.Parameters.Add(new OleDbParameter("@createtimestamp", OleDbType.VarChar)); comm.Parameters[6].Value = DateTime.Now.ToString();

當然還有最笨的辦法就是,定義一個字符串,然后將其里面的參數用string.replace替換。

我從網上查到一個網友的回復如下:我想應該是這樣的

1.SqlCommand should be '@' character2.OleDbCommand or OdbcCommand should be '?' character3.OracleCommand should be ':' character

唉,這些Command的不便利性使得用戶在使用時常常摸不到頭腦,不同的command有不同的參數格式設置,以后應該多多注意。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 庄浪县| 陇西县| 宜宾市| 开封县| 武定县| 兰西县| 潞城市| 高要市| 探索| 嘉义市| 旌德县| 沙坪坝区| 塔城市| 吴忠市| 德安县| 外汇| 汨罗市| 佳木斯市| 安塞县| 陈巴尔虎旗| 奇台县| 丽水市| 宜兴市| 苏州市| 湛江市| 渝北区| 繁峙县| 和田市| 剑阁县| 和静县| 成都市| 贵溪市| 兰溪市| 河南省| 时尚| 迁安市| 平果县| 平遥县| 莎车县| 延庆县| 剑阁县|