ImageVerifierCode 换一换
格式:DOCX , 页数:13 ,大小:19.51KB ,
资源ID:2168566      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/2168566.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(C# 中SqlParameter类的使用方法小结.docx)为本站会员(b****3)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

C# 中SqlParameter类的使用方法小结.docx

1、C# 中SqlParameter类的使用方法小结C# 中SqlParameter类的使用方法小结 在c#中执行sql语句时传递参数的小经验1、直接写入法: 例如: int Id =1; string Name=lui; cmd.CommandText=insert into TUserLogin values(+Id+,+Name+); 因为Id是数值,所以在传递的时候只需要在sql字符串中用+Id+即可实现,而 Name是字符串,所以在传递的时候还需要在+Name+两边各加一个单引号()来 实现;2、给命令对象添加参数法: 例如: int Id =1; string Name=lui; cm

2、d.CommandText=insert into TUserLogin values(Id,Name); /上条语句中直接在sql语句中写添加的参数名,不论参数类型都是如此. SqlParameter para=new SqlParameter(Id,SqlDbType.int,4);/生成一个名字为Id的参数,必须以开头表示是添加的参数,并设置其类型长度,类型长度与数据库中对应字段相同 para.Value=Id;/给参数赋值 cmd.Parameters.Add(para);/必须把参数变量添加到命令对象中去。 /以下类似 para=new SqlParameter(Name,SqlDb

3、Type.VarChar,16); para.Value=Name; com.Parameters.Add(para); .然后就可以执行数据库操作了。声明:本帖转自 在此对本帖原创作者,致以最诚挚的谢意!=SqlParameter用法SqlParameter parameters = new SqlParameter(a, a1), new SqlParameter(b, b1) ; string strReturn = ; StringBuilder strBulResult = new StringBuilder(); foreach (SqlParameter parameter in

4、 parameters) strBulResult.Append(parameter.ParameterName); strBulResult.Append(:); strBulResult.Append(parameter.SqlValue); strBulResult.Append(n); strReturn = strBulResult.ToString();声明:本帖转自 在此对本帖原创作者,致以最诚挚的谢意!=SqlParameter用法 关于Sql注入的基本概念,相信不需多说,大家都清楚,经典的注入语句是 or 1=1-单引号而截断字符串,“or 1=1”的永真式的出现使得表的一些

5、信息被暴露出来,如果sql语句是select * from 的话,可能你整个表的信息都会被读取到,更严重的是,如果恶意使用都使用drop命令,那么可能你的整个数据库得全线崩溃。当然,现在重点不是讲sql注入的害处,而是说说如何最大限度的避免注入问题。sql注入的存在在最大危害,是sql的执行语句没有和控制语句分开,我们想要select一些东西,但用户可能拼出 or 1=1甚至再加上delete/update/drop,后来是属于控制语句了,所以要避免sql的注入,就必须把查询语句与控制语句分开。SqlParameter给我们提供了一个很好的类,有了它,我们可以不现拼接字符串,也可以不再担心单引

6、号带来的惨剧,因为,这一切会有人来为我们完成的。简单的给个示例传统的查询语句的sql可能为string sql=select * from users where user_id=+Request.QueryStringuid+;很显然,我们在这里拼接了字符串,这就给sql注入留下了可乘之机。现在,我们要改写这样的语句,使用SqlParameter来做SqlCommand SqlCmd = new SqlCommand(sql, SqlConn);SqlParameter _userid = new SqlParameter(uid, SqlDbType.Int);_userid.Value

7、= Request.QueryStringu_id;SqlCmd.Parameters.Add(_userid);这样,我们可以保证外接参数能被正确的转换,单引号这些危险的字符也会转义了,不会再对库造成威胁。当然,这仅是一个示例而已,在真实的情况下,可能你还要对 Request.QueryStringu_id进行必要的检测与分析,这样才安全所以,使用参数化的sql语句,是一种很好的做法Dim sql As StringBuilder = New StringBuilder() sql.Append() sql.Append(SELECT * FROM test) sql.Append( WHE

8、RE a= p1 ) Dim command As SqlCommand = dac.CreateCommand(sql.ToString() dac为自己写的类 Dim param As SqlParameter = New SqlParameter() param .ParameterName = p1 param .SqlDbType = SqlDbType.NVarChar param .Value = b b为该函数的参数(ByVal b as String) command .Parameters.Add(param) Dim reader As SqlDataReader = c

9、ommand.ExecuteReader()SqlParameter 构造函数SqlParameter 构造函数 (String, SqlDbType, Int32, ParameterDirection, Byte, Byte, String, DataRowVersion, Boolean, Object, String, String, String)初始化 SqlParameter 类的一个新实例,该类使用参数名、参数的类型、参数的长度、方向、精度、小数位数、源列名称、DataRowVersion 值之一、用于源列映射的布尔值、SqlParameter 的值、此 XML 实例的架构集合

10、所在的数据库的名称、此 XML 实例的架构集合所在的关系架构以及此参数的架构集合的名称。命名空间: System.Data.SqlClient程序集: System.Data(在 system.data.dll 中)C#public SqlParameter ( string parameterName, SqlDbType dbType, int size, ParameterDirection direction, byte precision, byte scale, string sourceColumn, DataRowVersion sourceVersion, bool sour

11、ceColumnNullMapping, Object value, string xmlSchemaCollectionDatabase, string xmlSchemaCollectionOwningSchema, string xmlSchemaCollectionName)参数parameterName要映射的参数的名称。dbTypeSqlDbType 值之一。size参数的长度。directionParameterDirection 值之一。precision要将 Value 解析为的小数点左右两侧的总位数。scale要将 Value 解析为的总小数位数。sourceColumn源

12、列的名称。sourceVersionDataRowVersion 值之一。sourceColumnNullMapping如果源列可为空,则为 true;如果不可为空,则为 false。value一个 Object,它是 SqlParameter 的值。xmlSchemaCollectionDatabase此 XML 实例的架构集合所在的数据库的名称。xmlSchemaCollectionOwningSchema包含此 XML 实例的架构集合的关系架构。xmlSchemaCollectionName此参数的架构集合的名称。备注如果未在 size 和 precision 参数中显式设置 Size 和 Precision,则从 dbType 参数的值推断出它们。SqlParameter 类表示 SqlCommand 的参数,也可以是它到 DataSet 列的映射。无法继承此类。有关此类型所有成员的列表,请参阅 SqlParameter 成员。System.Object System.MarshalByRefObject S

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1