首页 / C# / C#中产生SQL语句的几种方式
C#中产生SQL语句的几种方式
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了C#中产生SQL语句的几种方式,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1560字,纯文字阅读大概需要3分钟。
内容图文
![C#中产生SQL语句的几种方式](/upload/InfoBanner/zyjiaocheng/463/604c65a6aa4d4bc980db452c4cdb679e.jpg)
(1)拼接产生SQL语句:
string sql = "insert into czyb(yhm,mm,qx) values(‘" + txtName.Text + "‘,‘" + txtPassword.Text + "‘,‘" + cmbPriority.Text + "‘)";
OleDbCommand cmd = new OleDbCommand(sql, conn);
这种方法写法比较复杂,且安全性低,容易遭受SQL注入攻击。
(2)用string.Format方法:
string sql = string.Format("insert into czyb(yhm,mm,qx) values(‘{0}‘,‘{1}‘,‘{2}‘)", txtName.Text, txtPassword.Text, cmbPriority.Text);
只是可读性优于第(1)种。
(3)用参数化SQL语句:
string sql="insert into czyb(yhm,mm,qx) values (@yhm,@mm,@qx)";
OleDbCommand cmd = new OleDbCommand();
cmd.CommandText = sql;
cmd.Parameters.AddWithValue("@yhm", txtName.Text);
cmd.Parameters.AddWithValue("@mm", txtPassword.Text);
cmd.Parameters.AddWithValue("@qx", cmbPriority.Text);
cmd.Connection = conn;
conn.Open();
cmd.ExecuteNonQuery();
代码结构清楚,对于不支持存储过程的数据库(如Access),推荐采用本方法。
(4)如果数据库支持存储过程(如SQL Server),可以调用存储过程执行SQL:
SqlConnection conn = new SqlConnection(txtConn);
SqlCommand cmd = new SqlCommand("SearchContact", conn); //存储过程名称为SearchContact
cmd.CommandType = CommandType.StoredProcedure;
cmd.Parameters.Add("@name", SqlDbType.VarChar, 50); //传入参数
cmd.Parameters["@name"].Value = txtName.Text.Trim();
由于存储过程是数据库预编译的,执行效率高,推荐采用。
C#中产生SQL语句的几种方式
标签:
本文系统来源:http://www.cnblogs.com/zemax/p/5408648.html
内容总结
以上是互联网集市为您收集整理的C#中产生SQL语句的几种方式全部内容,希望文章能够帮你解决C#中产生SQL语句的几种方式所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。