`
coolerbaosi
  • 浏览: 727844 次
文章分类
社区版块
存档分类
最新评论

常用SQL语句参数化+显示查询结果

 
阅读更多

常用SQL语句参数化集合:

在不同的SQL语句中使用参数化的方式不尽相同,但一般都是用占位符,然后用command对象添加参数如来实现,现在把常用的参数化方法列表如下:

1.select语句的参数化:使用数据库应用最多的恐怕要是查询语句了,他的参数化参数化方法比较常见。

strSql = "select * from table1 where Name=@name "
cmd = New SqlCommand(strSql, Conn)
cmd.Parameters.AddWithValue("rechargeteacher", StuRechargeRecord.ReacherTeacher)

其中Conn 为一个sqlconnection对象用来连接数据库,如果有多个参数方式相同。

2.inset语句的参数化:insert语句用于向数据库中添加一条新的记录,他的参数化方法如下:

strSql = "insert into StuCardEnroll(StuCardNo) values(@stucardno)"
cmd = New SqlCommand(strSql, Conn)
cmd.Parameters.Add("@stucardno", SqlDbType.NVarChar, 60).Value = stuenrollrecord.StuCardNo

3.update语句的参数化,用来更新数据库中某个字段的值:

strSql = "update UserLogOnRecord set LogOffTime=@logofftime <a href="mailto:StuCardNo=@"">"

cmd = New SqlCommand(strSql, Conn)
cmd.Parameters.AddWithValue("logoffdate", strTodayDate)

(参数abc应该为实体类的某个属性的值,这里由于没有列出实体类,所以用字符串abc代替,另外这个给出的sql语句是更新表中所有记录的LogOffTime字段的值为给定的值,如果仅仅要更新某条记录的该字段值则需在语句后面给出where条件)。

参数化查询数据显示的两种方法:

相信有过数据库使用经验的人都应该知道一般我们用sqlcommand对象和sqldatareader来进行查询并且来判断是否有查询记录,而如果是要将查询结果显示在界面上一般要用到的是sqldataadapter和datatable对象,(笔者一般用sqlcommand对象进行参数化查询并不是清楚如何用dataadapter对象来进行参数化查询,如能相告不胜感激),但是如果现在我想要用参数化查询并且要将查询结果显示在窗体上如何做呢,下面举两中小方法:

1.用datatable的load() 方法:

其实我们可以用sqlcommand对象+sqldatareader对象+datatable对象来进行数据显示.我们用sqlcommand对象进行参数化查询,然后然后将查询结果赋给sqldatareader对象,最后利用datatable对象的load()方法即可将sqlreader中记录放入datatable对象中,返回一个datatable对象即可。

2.用datatable的selectcommand方法

这种方法要比第一种简单一点,它直接用datatable对象+sqlcommand对象完成将查询结果放入datatable中。

cmd=new sqlcommand(sql语句,数据库连接语句)

datatable.selectcommand=cmd,然后返回datatable对象即可。

用这种方法同样可以实现显示参数化查询结果。

分享到:
评论

相关推荐

    SQL中in参数化的用法

    SQL中in参数化的用法,用三种方法,详见http://www.cnblogs.com/lzrabbit/archive/2012/04/22/2465313.html#wherein

    IFormatable 格式化sql 语句参数

    IFormatable格式化sql语句参数.pdf

    精通sql结构化查询语句

    6.2.4 使用别名 6.3 排序与分组 6.3.1 升序排序与降序排序 6.3.2 多列字段排序 6.3.3 使用GROUPBY子句对查询结果进行分组 6.3.4 HAVING子句的应用 6.4 条件查询 6.4.1 WHERE单条件语句查询 6.4.2 运算符查询 6.4.3 ...

    SQL Server SQL性能优化之参数化

     这首先要感谢“潇湘隐者”大神的提示,当时也是遇到一个实际问题,发现执行计划对数据行的预估,怎么都不对,有观察到无论怎么改变参数,SQL语句执行前都没有重编译,疑惑了好一会,这个问题正是简单参数化模式下...

    SQL参数化(防止SQL注入)

    在ASP.NET开发中,用SQL语句拼执行字符串,如果不参数换传递,有可能会被恶意破坏。

    浅析SQL Server参数化查询

    说来惭愧,工作差不多4年了,直到前些日子被DBA找上门让我优化一个CPU占用很高的复杂SQL语句时,我才突然意识到了参数化查询的重要性。  相信有很多开发者和我一样对于参数化查询认识比较模糊,没有引起足够的重视...

    经典SQL语句大全

    注:使用运算词的几个查询结果行必须是一致的。 12、说明:使用外连接 A、left (outer) join: 左外连接(左连接):结果集几包括连接表的匹配行,也包括左连接表的所有行。 SQL: select a.a, a.b, a.c, b.c, ...

    如何用参数化SQL语句污染你的计划缓存

    你的SQL语句的参数化总是个好想法。使用参数化SQL语句你不会污染你的计划缓存——错!!!在这篇文章里我想向你展示下用参数化SQL语句可以污染你的计划缓存,这是非常简单的!  ADO.NET-AddWithValue  ADO.NET是...

    ado.net操作oracle简单参数化sql操作

    关于ado.net简单的参数化查询,操作的是oracle数据库!关于ado.net简单的参数化查询,操作的是oracle数据库!

    ideal mybatis打印sql插件

    把 mybatis 输出的sql日志还原成完整的sql语句。 将日志输出的sql语句中的问号 ? 替换成真正的参数值。 通过 "Tools -&gt; MyBatis Log Plugin" 菜单或快捷键 "Ctrl+Shift+Alt+O" 启用。 点击窗口左边的 "Filter" ...

    SqlServer参数化查询之where in和like实现详解

    身为一名小小的程序猿,在日常开发中不可以避免的要和... where in 的参数化查询实现 首先说一下我们常用的办法,直接拼SQL实现,一般情况下都能满足需要 代码如下: string userIds = “1,2,3,4”; using (SqlConnec

    防SQL注入 生成参数化的通用分页查询语句

    但问题就出在这种通用分页存储过程是在存储过程内部进行SQL语句拼接,根本无法修改为参数化的查询语句,因此这种通用分页存储过程是不可取的。但是如果不用通用的分页存储过程,则意味着必须为每个具体的分页查询写...

    动态sql语句 操作更灵活更严谨.zip

    Mabits的动态SQL还允许开发者使用参数化查询,可以防止SQL注入攻击,并增强程序的安全性 学习经常用的几个标签 2.标签 标签是Mabits动态SQL中最常用的一个标签之一,它的作用是根据给定条件包含或排除不同的部分,以...

    用mybatis 的sql语句操作mongodb的简易方案.zip

    Mabits的动态SQL还允许开发者使用参数化查询,可以防止SQL注入攻击,并增强程序的安全性 学习经常用的几个标签 2.标签 标签是Mabits动态SQL中最常用的一个标签之一,它的作用是根据给定条件包含或排除不同的部分,以...

    这个库是生成动态 SQL 语句的框架.zip

    Mabits的动态SQL还允许开发者使用参数化查询,可以防止SQL注入攻击,并增强程序的安全性 学习经常用的几个标签 2.标签 标签是Mabits动态SQL中最常用的一个标签之一,它的作用是根据给定条件包含或排除不同的部分,以...

    sqlapi 源码

    2.fetch.cpp文件主要是关于api的基本操作,包括连接数据库,sql语句的执行,绑定sql语句参数的方法,获取结果的方法,以及结果中字段的处理,断开连接,以及异常的处理。 3.sqlapi.cpp文件主要测试数据库优化的性能...

    经典全面的SQL语句大全

    经典SQL语句大全 下列语句部分是Mssql语句,不可以在access中使用。  SQL分类:  DDL—数据定义语言(CREATE,ALTER,DROP,DECLARE)  DML—数据操纵语言(SELECT,DELETE,UPDATE,INSERT)  DCL—数据控制...

    SqlServer:使用IN()子句C#进行参数化查询

    使用参数化查询在SQL中为IN()运算符发送参数的实用工具类

    精通SQL--结构化查询语言详解

    5.3 排序查询结果 89 5.3.1 单列排序 89 5.3.2 多列排序 90 5.3.3 采用序号进行多列排序 91 5.3.4 反向排序 92 5.4 使用where子句定义搜索条件查询 93 5.4.1 where子句单条件查询 93 5.4.2 单值比较运算符 94...

    SQLServer Top语句参数化方法

    在T-Sql中,一般top数据不确定的情况下,都是拼sql,这样无论是效率还是可读性都不好。应该使用下面参数化Top方式

Global site tag (gtag.js) - Google Analytics