Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/336.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/32.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# SQL中的VB.NET登录问题_C#_Asp.net_Vb.net_Login_Visual Studio 2015 - Fatal编程技术网

C# SQL中的VB.NET登录问题

C# SQL中的VB.NET登录问题,c#,asp.net,vb.net,login,visual-studio-2015,C#,Asp.net,Vb.net,Login,Visual Studio 2015,因此,我在vb.net上的登录代码有问题,我想知道有没有人可以建议我的代码有什么问题 我得到的错误是: System.Data.dll中发生“System.Data.SqlClient.SqlException”类型的异常,但未在用户代码中处理 其他信息:数据类型text和varchar在equal to运算符中不兼容 代码 您的[PatientDetails]表中的[EmailAddress]字段或[Password]字段很可能属于文本类型。要使用此查询,您需要将基础数据类型更改为varcha

因此,我在vb.net上的登录代码有问题,我想知道有没有人可以建议我的代码有什么问题

我得到的错误是:

System.Data.dll中发生“System.Data.SqlClient.SqlException”类型的异常,但未在用户代码中处理

其他信息:数据类型text和varchar在equal to运算符中不兼容

代码


您的
[PatientDetails]
表中的
[EmailAddress]
字段或
[Password]
字段很可能属于
文本类型。要使用此查询,您需要将基础数据类型更改为
varchar
nvarchar

更重要的是,您的查询容易受到SQL注入的攻击,因为您既没有清理、转义,也没有参数化这些输入。想象一下,如果有人在用户名框中输入以下内容:

';DELETE FROM PatientDetails; --

当你检查他们的密码时,他们只是删除了你的整个表格…

除了Tim所说的之外,没有理由让EmailAddress或password字段的类型为
text
。对两者使用
nvarchar(255)
就足够了。

您是否意识到这是一个等待发生的SQL注入?参数化您的查询!更不用说纯文本密码了,你能帮我吗?
';DELETE FROM PatientDetails; --