C# 使用OLEDB连接Excel注意事项
2012-07-12 14:35
375 查看
在使用Microsoft .NET Framework的SQL Server数据提供程序中,sql语句中使用参数的方式和直接在sqlserver读写工具中使用方式是一致的,即是@parameter的形式。
代码如下:
从上面的示例代码中可以看出,sqlserver的参数构造以"@"开头,加上参数名,而在参数赋值语句中,可以不用去考虑sql语句中参数的顺序,参数的值由参数名来确定。
但是在Microsoft .NET Framework的OLE DB .NET数据提供程序中,不支持将参数传递给 OleDbCommand 调用的 SQL 语句或存储过程的命名参数。如果使用命名参数,framwork编译是没有问题的,代码执行也不会报错,但是sql语句的执行结果就不是想要的结果了。
在Microsoft .NET Framework的OLE DB .NET数据提供程序中,程序支持以“?”代替参数,参数赋值代码中,按照参数顺序确定每个"?"对应的参数值。
注意:在使用Microsoft .NET Framework的SQL Server数据提供程序中是不支持使用"?"代替参数的。
代码如下:
//数据库连接对象conn SqlCommand cmd = new SqlCommand(); //设置参数值 object value = null; //注意这里语句中参数的构建方式:@... string sql = string.Format("select * from {0} where a=@a and b=@b","T"); cmd.Parameters.Add(new SqlParameter[]{new SqlPatameter("b",bvalue),new SqlParameter("a",avalue}); cmd.CommandType=CommandType.Text; cmd.CommandText = sql; cmd.Connection = conn; //查询数据 //....................
从上面的示例代码中可以看出,sqlserver的参数构造以"@"开头,加上参数名,而在参数赋值语句中,可以不用去考虑sql语句中参数的顺序,参数的值由参数名来确定。
但是在Microsoft .NET Framework的OLE DB .NET数据提供程序中,不支持将参数传递给 OleDbCommand 调用的 SQL 语句或存储过程的命名参数。如果使用命名参数,framwork编译是没有问题的,代码执行也不会报错,但是sql语句的执行结果就不是想要的结果了。
在Microsoft .NET Framework的OLE DB .NET数据提供程序中,程序支持以“?”代替参数,参数赋值代码中,按照参数顺序确定每个"?"对应的参数值。
string sql = string.Format(@"update [{0}$] set [{1}]=? where [{1}]=?", tname, item.ColumnName); cmd.CommandText = sql; cmd.Parameters.Add(new OleDbParameter("value",newString)); cmd.Parameters.Add(new OleDbParameter("option", oldString)); cmd.ExecuteNonQuery();
注意:在使用Microsoft .NET Framework的SQL Server数据提供程序中是不支持使用"?"代替参数的。
相关文章推荐
- C#使用OLEDB读取Excel的一个注意点
- C#连接excel的方法与注意事项
- C# 使用OLEDB读取不同版本Excel数据的连接字符串
- C#使用OleDb连接Excel数据源编写查询语句捕获到“无法识别的关键字when”的异常
- C#使用oledb连接excel执行Insert Into语句出现“操作必须使用一个可更新的查询”的解决办法
- C#使用OLEDB读取Excel的一个注意点
- C#使用oledb连接excel运行Insert Into语句出现“操作必须使用一个可更新的查询”的解决的方法
- c#事务的使用、示例及注意事项
- C#导出Excel的函数及注意事项
- ubuntu下安装使用MySQL的一些注意事项(远程无法连接解决方法)
- 使用poi操作Excel的几点注意事项
- 使用poi操作Excel的几点注意事项
- C# System.DateTime.Now.ToString()使用注意事项
- 使用C#通过Oracle.DataAccess连接Oracle,部署时需要注意版本问题
- Asp.net/c#+OleDb操作excel文件(二),数据传输使用Parameters
- C#读取Excel文件(通过OleDb连接,把excel文件作为数据源来读取)
- PhpExcel的使用、示例及注意事项
- C#使用oledb导出数据到excel的方法
- C# 多线程使用队列注意事项
- C# 中的 @ 符号的使用及注意事项