关于OLEDB参数化查询【.net】
来源:互联网 发布:剑网三脸型数据清洗 编辑:程序博客网 时间:2024/06/07 05:21
使用参数化 DbCommand 的一个缺点是需要参数的代码将仅适用于支持相同语法的提供程序。OLEDB、SqlClient 和 Oracle 提供程序全部使用不同的语法。例如,用于命名和指定参数的 SQL 语法使用 @ 符号,OLEDB 参数语法需要使用问号 (?) 作为参数占位符,而 Oracle 提供程序使用冒号 (:)。
string sqlstr = " select * from table where id=@id and name=@name ";
System.Data.SqlClient.SqlParameter parameters = newSystem.Data.SqlClient.SqlParameter[2];
parameters[0] = new SqlParameter("@id", uid);
parameters[1] = new SqlParameter("@name", name);
string sqlstr = " select * from table where id=? and name=? ";
System.Data.OleDb.OleDbParameter parameters = new System.Data.OleDb.OleDbParameter[2];
parameters[0] = new OleDbParameter("id", uid);
parameters[1] = new OleDbParameter("name", name);
string sqlstr = " select * from table where id=:id and name=:name ";
System.Data.OracleClient.OracleParameter parameters = new System.Data.OracleClient.OracleParameter[2];
parameters[0] = new OracleParameter(":id", uid);
parameters[1] = new OracleParameter(":name", name);
在通过OLEDB传递参数时候需要注意的问题
比如
cmd.CommandText = "insert into shop(ShopName,ShopAddress) Values(@sn,@sadd)";
cmd.Parameters.Clear();
p = new OleDbParameter();
p.ParameterName = "@sn"; p.OleDbType = OleDbType.Char; p.Value = sn;
cmd.Parameters.Add(p);
p = new OleDbParameter();
p.ParameterName = "@sadd"; p.OleDbType = OleDbType.Char; p.Value = sadd;
cmd.Parameters.Add(p);
因为语句中Values(@sn,@sadd)
@sn在@sadd之前 如果你在写参数的时候把@sn和@sadd的顺序写反 那么传递的参数也会反过来 即使你的p.ParameterName定义准确了也一样
- 关于OLEDB参数化查询【.net】
- VC++实战OLEDB编程(十一)——参数化查询和存储过程调用
- VC++实战OLEDB编程(十一)——参数化查询和存储过程调用
- ado.net参数化查询
- OleDb和ADO.NET读取文本文件时进行条件查询
- VC++实战OLEDB编程(十一)——参数化查询和存储过程调用(转)
- .NET to ACCESS的参数化查询
- ASP.NET中参数化查询
- .NET中参数化查询数据库
- ASP.NET 模糊查询参数化
- 关于SQL参数化的模糊查询
- [C#] Oledb 查询
- EXCEL OLEDB 查询
- .Net的Oledb问题
- 使用OleDb操作acces参数化SQL语句 出错
- ADOMD.NET的参数查询
- C# ADO.NET参数查询
- vb.net sql参数化查询空参数查询全部解决方案
- VC中dll的生成及使用(本来这几天在QT中用DLL)
- Linux驱动修炼之道
- DbSharper的使用
- uCOS-II 阶段感悟
- 一些开源的IOS项目(wifi扫描 条形码扫描 tcp/ip 等等)
- 关于OLEDB参数化查询【.net】
- 【DB2】DB2 基础: 日期和时间的使用
- C++中的类对象指针的向上转换问题
- 快速幂取模和快速取模
- 基于Struts2项目,发布到Websphere服务器时,触发的Filter问题解决
- 在离开的和新的开始时候留点什么(一)
- ARM复习题
- GMF 双击图形打开新窗口编辑
- c++打字母游戏