国产探花免费观看_亚洲丰满少妇自慰呻吟_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有不同的參數格式設置,以后應該多多注意。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 和静县| 郁南县| 监利县| 衡阳市| 靖远县| 乾安县| 利川市| 平潭县| 同江市| 西昌市| 金华市| 兴宁市| 天峻县| 易门县| 宾川县| 浦东新区| 城口县| 龙门县| 集贤县| 贞丰县| 扶绥县| 淄博市| 齐河县| 达尔| 顺昌县| 颍上县| 阳东县| 和平县| 山阳县| 乌鲁木齐县| 长海县| 汝州市| 河源市| 凤台县| 开原市| 襄垣县| 周宁县| 嘉鱼县| 板桥市| 漳浦县| 凤山县|