使用ASP.NET/VB.NET将数据插入SQL数据库
我有以下代码:使用ASP.NET/VB.NET将数据插入SQL数据库,asp.net,vb.net,sql-server-2008,insert,Asp.net,Vb.net,Sql Server 2008,Insert,我有以下代码: Dim myConn As SqlConnection Dim cmd As SqlCommand Dim sqlstring, DNAME, DEXP, DCREATION, DLASTUPDATE, DCOMMENTS As String DNAME = TextBox1.Text DEXP = TextBox2.Text DCREATION = TextBox3.Text DLASTUPDATE = TextBox4
Dim myConn As SqlConnection
Dim cmd As SqlCommand
Dim sqlstring, DNAME, DEXP, DCREATION, DLASTUPDATE, DCOMMENTS As String
DNAME = TextBox1.Text
DEXP = TextBox2.Text
DCREATION = TextBox3.Text
DLASTUPDATE = TextBox4.Text
DCOMMENTS = TextBox5.Text
myConn = New SqlConnection("Integrated Security=SSPI;Data Source=.;Initial Catalog=DOMAIN_NAME;User ID=sa;Password=***********")
myConn.Open()
sqlstring = " INSERT INTO ROLAND (D_NAME, D_EXPIRATION, D_CREATION, D_LASTUPDATE,D_COMMENTS) VALUES ('" + DNAME + "','" + DEXP + "','" + DCREATION + "','" + DLASTUPDATE + "','" + DCOMMENTS + "')"
cmd = New SqlCommand(sqlstring, myConn)
cmd.ExecuteNonQuery()
myConn.Close()
Response.Redirect(Request.RawUrl, True)
当我执行时,它会给我以下错误:
Cannot open database "DOMAIN_NAME" requested by the login. The login failed.
Login failed for user 'comm-pc10\pcuser10.comm'.
并突出显示myConn.Open()
这里有什么问题,有什么帮助吗?我有SQLServer2008和我的数据库的用户名和密码您已在其上集成了安全性,这意味着SQLServer使用Windows身份验证,因此会忽略您的用户和密码设置。我猜你的windows用户没有访问数据库的权限
设置“integratedsecurity=false”以使用用户名/密码。问题在于连接字符串:
Initial Catalog = Database Name Not Domain Name
并确保您的用户id和密码正确,数据源是正确的服务器地址
有关更多信息,请参见此:
您正在使用Integrated Security=SSPI,它与窗口使用身份验证相链接。
或者您应该将该用户添加到数据库中以删除该用户。此代码有助于使用vb.net 2010访问数据库中的多个记录 ”“苏尼尔先生
Imports System
Imports System.Data
Imports System.Data.SqlClient
Imports System.Data.DataSet
Imports System.Data.SqlTypes
Public Class insert_extracode
Dim i As Int16
Private Sub insert_extracode_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
i = 0
End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim con As New SqlConnection
Dim cmd As New SqlCommand
Dim adp As New SqlDataAdapter
Dim data As New DataSet
con.ConnectionString = "Data Source=DELL-PC\SQLEXPRESS;Initial Catalog=hotel;Integrated Security=True"
cmd.Connection = con
Dim str As String = "select * from customer"
cmd = New SqlCommand(str, con)
adp = New SqlDataAdapter(cmd)
adp.Fill(data)
TextBox1.Text = data.Tables(0).Rows(i).Item(0)
TextBox2.Text = data.Tables(0).Rows(i).Item(1)
TextBox3.Text = data.Tables(0).Rows(i).Item(2)
i = i + 1
End Sub
End Class
我建议您了解如何在vb中进行参数化查询。像这样连接insert语句会为SQL注入留下很大的空间。更糟糕的是,他使用SA帐户