读书人

SQL注入小弟我写的如何不对呢

发布时间: 2012-01-10 21:26:51 作者: rapoo

SQL注入我写的怎么不对呢?
编译错误
说明: 在编译向该请求提供服务所需资源的过程中出现错误。请检查下列特定错误详细信息并适当地修改源代码。

编译器错误信息: CS0120: 非静态的字段、方法或属性“System.Data.OleDb.OleDbCommand.Parameters.get”要求对象引用

源错误:


行 134:
行 135: OleDbCommand.Parameters.Add(new OleDbParameter( "@loginName ", OleDbType.NVarChar, 20));
行 136: OleDbCommand.Parameters[ "@loginName "].Value = this.UserName.Text;




[解决办法]
OleDbCommand.Parameters.Add(new OleDbParameter( ":loginName ", OleDbType.NVarChar, 20));
OleDbCommand.Parameters[ "loginName "].Value = this.UserName.Text;


[解决办法]
参数格式不对,Sqlserver是@,Oracle是:,MySql是?;
SQL语句中也是如此
[解决办法]
看错了,OleDbCommand是需要实例化的,如:
System.Data.OleDb.OleDbCommand oc = new System.Data.OleDb.OleDbCommand( "select * form user where id=@id ");
oc.Parameters.Add( "id ", System.Data.OleDb.OleDbType.Integer);
oc.Parameters[ "id "].Value = 123;
[解决办法]
这个有点乱.

操作数据库干脆都用 SQLHELPER就行啦

[解决办法]
new Command 是没有贴出来还是没写?
[解决办法]
mark


看不出代码哪里错误
[解决办法]
System.Data.OleDb.OleDbCommand 需要实例化,然后再用实例,也就是New一个对象出来,除非调用的是静态方法

读书人网 >asp.net

热点推荐