关于C#执行多个SQL语句的一些操作——Note on Dec. 19th
2011-12-19 10:03
411 查看
(MySQL)
对于查询语句,单查询结构利用ExecuteScalar()函数,可以减少占用资源。并且返回为一个object对象,可以自动释放。
而函数ExecuteReader()方法,需要创建MySqlDataReader对象,并且使用完之后必须释放资源。
处理带参数的SQL语句
之前做项目,对于带参数的SQL语句,一直利用string.Format()函数,生成需要的SQL语句。
今天发现另一种处理参数的方法,即利用问号(?)和变量名代理,例如:“?var”来代替参数。可以通过Add()方法为参数复制。
如果需要执行多个SQL语句,那么必须要使用MySqlParameter对象。可以通过Add()函数为SQL语句中参数设置数据类型。然后通过Prepare()方法对SQL语句进行处理,再通过value属性复制。
例程
对于查询语句,单查询结构利用ExecuteScalar()函数,可以减少占用资源。并且返回为一个object对象,可以自动释放。
而函数ExecuteReader()方法,需要创建MySqlDataReader对象,并且使用完之后必须释放资源。
处理带参数的SQL语句
之前做项目,对于带参数的SQL语句,一直利用string.Format()函数,生成需要的SQL语句。
今天发现另一种处理参数的方法,即利用问号(?)和变量名代理,例如:“?var”来代替参数。可以通过Add()方法为参数复制。
com.CommandText = "INSERT INTO table(name1,name2) VALUES(?name1,?name2)"; com.Parameters.Add("?name1",value1); com.Parameters.Add("?name2",value2); com.ExecuteNonQuery();
如果需要执行多个SQL语句,那么必须要使用MySqlParameter对象。可以通过Add()函数为SQL语句中参数设置数据类型。然后通过Prepare()方法对SQL语句进行处理,再通过value属性复制。
MySqlParameter p_name1,p_name2; MySqlCommand com; com.Connection = conn; com.CommandText = "INSERT INTO table(name1,name2) VALUES(?name1,?name2)"; p_name1 = Parameters.Add("?name1",type1); p_name2= Parameters.Add("?name2",type2); com.Prepare(); p_name1.Value = value1; p_name2.Value = value2; com.ExecuteNonQuery();
例程
MySqlParameter p_id,p_stu; MySqlCommand com; com.Connection = conn; com.CommandText = "INSERT INTO table(name1,name2) VALUES(?name1,?name2)"; p_id = Parameters.Add("?id",MySqlDbType.Int32); p_stu = Parameters.Add("?stu",MySqlDbType.VarChar); com.Prepare(); p_id.Value = 19; p_stu.Value = "张三"; com.ExecuteNonQuery();//执行第一条插入语句 p_id.Value = 12; p_stu.Value = "李四"; com.ExecuteNonQuery();//执行第二条插入语句
相关文章推荐
- 总结一些关于操作数据库是sql语句还是存储过程问题
- 关于MySql中数据库、表的操作以及增删改查等一些SQL语句注意事项
- 关于MSCHART插件的一些功能函数记录——Note on Dec. 20
- C# SQL语句执行时间过长在操作完成之前超时时间已过或服务器未响应问题的解决
- SQL Server 第四堂课,创建存储过程。存储过程是一组编译在单个执行计划中的transact-SQL语句。存储过程相当于C#函数,可以允许模块化程序设计,允许更快执行如果某操作需要大量transct-SQL代码或需要重复执行,将在创建存储过程中对其进行分析和优化。
- 关于一些时间的操作 C# or SQL
- 关于sql语句的一些操作 行列转换(转)
- 关于php操作mysql执行数据库查询的一些常用操作汇总
- C#中使用SQL的BULK语句,进行大数据量操作
- C#(.net)中的一次连接数据库执行多条sql语句(两种方法)
- mysql跟踪每个操作执行sql语句情况
- c#操作access,update语句不执行的解决办法
- 关于使用JdbcTemplate封装的方法执行原生sql语句的常用写法
- Postgresql常用的表字段操作语句以及其他一些SQL语句
- c# winform 关于 datagridview 一些 操作
- MySQL数据库操作中常用的一些SQL语句
- SQL语句执行效率及分析(note)
- 在c#中执行sql语句时传递参数的小经验
- c#实现用SQL池(多线程),定时批量执行SQL语句
- C#执行sql语句抛出“标准表达式中数据类型不匹配”