易截截图软件、单文件、免安装、纯绿色、仅160KB

如何有效的防止SQL连接字符串注入

 概念:在编写安全代码时,最重要的规则之一就是“绝对不要盲目的相信用户的输入”。
利用ADO.NET 2.0的SqlConnectionStringBuilder类生成数据库连接字符串,它可以有效的防止“SQL连接字符串恶意注入”,因为这个类是专门为SQL SERVER设计的所以;它兼容旧式关键字。关于如何使用SqlConnectionStringBuilder类,请参考我以前写的一篇“智能数据库连接生成器”文章里。
防止SQL数据库连接字符串示例
C#后台示例代码:
SqlConnectionStringBuilder bldr = new SqlConnectionStringBuilder();
bldr.DataSource = @".\SQLExpress";
bldr.InitialCatalog = "Pubs";
bldr.UserID = textBox1.Text;
bldr.Password = textBox2.Text;
刚才看到前台用户在用户名输入的用户名字符串,就是恶意SQL注入,而SqlConnectionStringBuilder会把
“用户名;Data Source=Northwind”的字符串作为“UesrID”来登录数据库。这就防止恶意的注入了。
最后希望能和志同道合的开发同志,一起学习,一起分享。谢谢
推荐链接:惠普黑白激光打印机/爱普生针式打印机


相关文档:

动态SQL基本语法

1 :普通SQL语句可以用exec执行
Select * from tableName
exec('select * from tableName')
exec sp_executesql N'select * from tableName' -- 请注意字符串前一定要加N
2:字段名,表名,数据库名之类作为变量时,必须用动态SQL
declare @fname varchar(20)
set @fname = 'FiledName'
Select @fname from tab ......

sql 里的 update 实现联合表更新

 1.update a set a.nickname=b.nickname from tab1 a,tab2 b where a.username=b.username
2.Update student_score set
student_score.level=level_about.level from
level_about where student.score
between level_about.start_score and level_about.end_score ......

sql格式化日期

 Select CONVERT(varchar(100), GETDATE(), 0): 05 16 2006 10:57AM
Select CONVERT(varchar(100), GETDATE(), 1): 05/16/06
Select CONVERT(varchar(100), GETDATE(), 2): 06.05.16
Select CONVERT(varchar(100), GETDATE(), 3): 16/05/06
Select CONVERT(varchar(100), GETDATE(), 4): 16.05.06
Select CONVERT ......

在SQL Server数据库中拆分字符串函数

SQL Server数据库中拆分字符串函数的具体方法:
以下为引用的内容:
  CREATE  FUNCTION uf_StrSplit '1.1.2.50','.'
  (@origStr varchar(7000),  --待拆分的字符串
  @markStr varchar(100))  --拆分标记,如','
  RETURNS @splittable table
  (
   str_id  varchar(4000) NOT NULL, --编号ID ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号