ASP.NET(VB)如何将textbox.text插入SQL数据库?

ASP.NET(VB)如何将textbox.text插入SQL数据库?,sql,asp.net,vb.net,Sql,Asp.net,Vb.net,我正在设计一个登记表。 以下是我的代码: 但在我这样做之后,SQL表的显示就不是用户的数据了。。。。? 数据库表显示用户名和密码(&U)& (用户名、密码…是文本框名称) 好的,首先,我想试探一下你的问题。然后,我们需要讨论SQL注入 试试这个: Dim MyValues as String = String.Format("'{0}', '{1}', '{2}', '{3}', '{4}'", username.Text, password.Text, nickname.Text, realn

我正在设计一个登记表。 以下是我的代码: 但在我这样做之后,SQL表的显示就不是用户的数据了。。。。? 数据库表显示用户名和密码(&U)& (用户名、密码…是文本框名称)


好的,首先,我想试探一下你的问题。然后,我们需要讨论SQL注入

试试这个:

Dim MyValues as String = String.Format("'{0}', '{1}', '{2}', '{3}', '{4}'", username.Text, password.Text, nickname.Text, realname.Text, email.Text )

Dim sqlstr As String = "Insert Into user_profile(username,password,nickname,realname,email) Values(MyValues)"
(我尚未测试该代码。请注意语法错误。)

话虽如此,但重要的是你要了解你试图这样做的方式的危险性。这里的严重问题是,您很容易受到SQL注入攻击。谷歌。但简而言之,使用这种方法,有人可以将“drop table”之类的命令放入文本框,这些命令将在数据库中执行

正确的方法是创建一个包含INSERT语句的存储过程,然后用参数将值传递给它。网络上到处都是关于如何做到这一点的教程。你会很容易找到一个


祝你好运

您应该考虑使用SqlParameters,而不是concatenate.Hi。我的用户名是
DROP TABLE user\u profile--注意不要使用我的用户名。Sql注入问题的一部分,检查是否适用于您的情况小Bobby表?非常感谢!完成了!好!!
Dim MyValues as String = String.Format("'{0}', '{1}', '{2}', '{3}', '{4}'", username.Text, password.Text, nickname.Text, realname.Text, email.Text )

Dim sqlstr As String = "Insert Into user_profile(username,password,nickname,realname,email) Values(MyValues)"