仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 369|回复: 8
打印 上一主题 下一主题

[学习教程] ASP网页编程之怎样写一段高效,平安的sql查询代码

[复制链接]
跳转到指定楼层
楼主
发表于 2015-1-16 22:34:35 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
asp,你就只能等着微软给你解决,它不乐意你就只好悲催。而且asp跑在windows服务器上,windows服务器跟linux比起来简直弱爆了!看一看这段代码,让我们来看看次要存在的成绩

//设置SQL语句
insertstr="insertintouserinfo(name,password,email,phone,mobile,post,address)VALUES(";
insertstr+=this._name.Trim()
;+",";
insertstr+=this._password.Trim()+",";
insertstr+=this._email.Trim()+",";
insertstr+=this._phone.Trim()+",";
insertstr+=this._mobile.Trim()+",";
insertstr+=this._post.Trim()+",";
insertstr+=this._address.Trim()+")";


1、效力成绩
起首看看上边这段代码,效力太低了,这么多的字符串联接自己效力就够低的了,再加上这么些trim(),完整没有需要。

2、准确性成绩
这段代码太懦弱,一个单引号就能够使全部程序溃散。

3、平安性
同上,使用单引号我能够做良多事,好比运转个xp_cmd命令,那你就惨了,呵呵。

那末,如何来写呢,下面这段代码能够改成如许:
stringstrSql="insertintosometable(c1,c2,c3,...)values(@c1,@c2,@c3,...)"
SqlCommandmyCommand=newSqlCommand(strSql,myConn)
try
{
myCommand.Parameters.Add(newSqlParameters("@c1",SqlDataType.VarChar,20)
myCommand.Parameters["@c1"].Value=this._Name;
....
//有几个加几个
....
}
catch(...)
...

如许呢,既能够制止低效力的字符串联接,又能够使用sqlcommand参数无效性检测来制止不法字符的呈现,而且因为这类parameter体例是预编译的,效力更高。

一举数得,何乐而不为呢。
使用filesystemobject,可以对服务器上的文件进行操作,浏览、复制、移动、删除等。有ado的支持,asp对数据库的操作非常得心应手。你甚至可以像使用本地数据库那样,管理远程主机上的数据库,对表格、记录进行各种操作。
小妖女 该用户已被删除
沙发
发表于 2015-1-19 17:20:13 | 只看该作者
学习ASP其实应该上升到如何学习程序设计这种境界,其实学习程序设计又是接受一种编程思想。比如ASP如何学习,你也许在以前的学习中碰到过。以下我仔细给你说几点:
蒙在股里 该用户已被删除
板凳
发表于 2015-1-25 20:16:41 | 只看该作者
如何更好的使自己的东西看上去很不错等等。其实这些都不是问题的实质,我们可以在实践中不断提升自己,不断充实自己。
飘灵儿 该用户已被删除
地板
发表于 2015-2-3 20:48:32 | 只看该作者
掌握asp的特性而且一定要知道为什么。
透明 该用户已被删除
5#
发表于 2015-2-9 05:04:30 | 只看该作者
Response:从字面上讲是“响应”,因此这个是服务端向客户端发送东西的,例如Response.Write
再现理想 该用户已被删除
6#
发表于 2015-2-27 00:04:22 | 只看该作者
封装性使得代码逻辑清晰,易于管理,并且应用到ASP.Net上就可以使业务逻辑和Html页面分离,这样无论页面原型如何改变,业务逻辑代码都不必做任何改动;继承性和多态性使得代码的可重用性大大提高。
因胸联盟 该用户已被删除
7#
发表于 2015-3-8 18:38:49 | 只看该作者
最近在学asp,不要问我为什么不直接学.net,因为公司网站是asp做的所以有这个需要,卖了本书asp入门到精通,对里面的六大内置对象老是记不住,还有很多属性和方法看的头晕。
山那边是海 该用户已被删除
8#
发表于 2015-3-16 10:59:29 | 只看该作者
弱类型造成潜在的出错可能:尽管弱数据类型的编程语言使用起来回方便一些,但相对于它所造成的出错几率是远远得不偿失的。
第二个灵魂 该用户已被删除
9#
发表于 2015-3-22 22:28:34 | 只看该作者
用户端的浏览器不需要提供任何别的支持,这样大提高了用户与服务器之间的交互的速度。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-12-24 04:18

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表