Sql 使用ASP.net(VB.net)插入不重复的MS Access
我正在建设一个电子商务网站作为一个学校项目。我如何确保我不会有重复的用户,因为这是他们必须填写用户详细信息的页面 这是我现在正在使用的代码,ExecuteOnQuery不起作用。它没有给出任何错误,只是跳过了它Sql 使用ASP.net(VB.net)插入不重复的MS Access,sql,asp.net,ms-access,ado.net,duplicates,Sql,Asp.net,Ms Access,Ado.net,Duplicates,我正在建设一个电子商务网站作为一个学校项目。我如何确保我不会有重复的用户,因为这是他们必须填写用户详细信息的页面 这是我现在正在使用的代码,ExecuteOnQuery不起作用。它没有给出任何错误,只是跳过了它 Protected Sub bntVerzenden_Click(sender As Object, e As EventArgs) Handles bntVerzenden.Click Dim sqlCommand As String Dim intGebruike
Protected Sub bntVerzenden_Click(sender As Object, e As EventArgs) Handles bntVerzenden.Click
Dim sqlCommand As String
Dim intGebruikersID, intRubriekID As Integer
Dim VerkopenConn As New OleDb.OleDbConnection
Dim VerkopenCommArtikel, VerkopenCommGebruiker, GebruikersIDComm, RubriekIDComm, EmailComm As New OleDb.OleDbCommand
VerkopenConn.ConnectionString = My.Settings.SvShopConnection
VerkopenCommArtikel.Connection = VerkopenConn
VerkopenCommGebruiker.Connection = VerkopenConn
GebruikersIDComm.Connection = VerkopenConn
RubriekIDComm.Connection = VerkopenConn
EmailComm.Connection = VerkopenConn
'Email Controleren
sqlCommand = "SELECT * FROM tblGebruiker WHERE GebruikersEmail = '" & txtEmail.Text & "'"
EmailComm.CommandText = sqlCommand
If VerkopenConn.State = ConnectionState.Closed Then VerkopenConn.Open()
If EmailComm.ExecuteNonQuery = 0 Then
'Gebruiker gegevens aan de database toevoegen
VerkopenCommGebruiker.CommandText = "INSERT INTO tblGebruiker (GebruikersNaam, GebruikersVoornaam, GebruikersEmail, GebruikersGSM) VALUES (@GebruikersNaam, @GebruikersVoornaam, @GebruikersEmail, @GebruikersGSM)"
VerkopenCommGebruiker.Parameters.AddWithValue("@GebruikersNaam", txtNaam.Text)
VerkopenCommGebruiker.Parameters.AddWithValue("@GebruikersVoornaam", txtVNaam.Text)
VerkopenCommGebruiker.Parameters.AddWithValue("@GebruikersEmail", txtEmail.Text)
VerkopenCommGebruiker.Parameters.AddWithValue("@GebruikersGSM", txtGsm.Text)
VerkopenCommGebruiker.ExecuteNonQuery()
'GebruikersID uit de database halen
GebruikersIDComm.CommandText = "SELECT tblGebruiker.GebruikersID FROM tblGebruiker WHERE tblGebruiker.GebruikersNaam = @Naam AND tblGebruiker.GebruikersVoornaam = @VNaam;"
GebruikersIDComm.Parameters.AddWithValue("@Naam", txtNaam.Text)
GebruikersIDComm.Parameters.AddWithValue("@VNaam", txtVNaam.Text)
intGebruikersID = Integer.Parse(GebruikersIDComm.ExecuteScalar)
'RubriekID uit de database halen
RubriekIDComm.CommandText = "SELECT tblRubriek.RubriekID FROM tblRubriek WHERE tblRubriek.RubriekNaam = @RubriekNaam"
RubriekIDComm.Parameters.AddWithValue("@RubriekNaam", lstRubriek.SelectedItem.ToString)
intRubriekID = Integer.Parse(RubriekIDComm.ExecuteScalar)
'Artikel gegevens aan de database toevoegen
VerkopenCommArtikel.CommandText = "INSERT INTO tblArtikel (ArtikelBeschrijving, ArtikelPrijs, RubriekID, ArtikelAankoopdatum, ArtikelTekoopgezet, ArtikelBeschikbaar, GebruikersID) VALUES ( @ArtikelBeschrijving, @ArtikelPrijs, @RubriekID, @ArtikelAankoopdatum, @ArtikelTekoopgezet, @ArtikelBeschikbaar, @GebruikersID)"
VerkopenCommArtikel.Parameters.AddWithValue("@ArtikelBeschrijving", txtArtikelBeschrijving.Text)
VerkopenCommArtikel.Parameters.AddWithValue("@ArtikelPrijs", txtArtikelPrijs.Text)
VerkopenCommArtikel.Parameters.AddWithValue("@RubriekID", intRubriekID)
VerkopenCommArtikel.Parameters.AddWithValue("@ArtikelAankoopdatum", CalAankoop.SelectedDate)
VerkopenCommArtikel.Parameters.AddWithValue("@ArtikelTekoopgezet", calVerkoop.SelectedDate)
VerkopenCommArtikel.Parameters.AddWithValue("@ArtikelBeschikbaar", True)
VerkopenCommArtikel.Parameters.AddWithValue("@GebruikersID", intGebruikersID)
VerkopenCommArtikel.ExecuteNonQuery()
VerkopenConn.Close()
Else
'GebruikersID uit de database halen
GebruikersIDComm.CommandText = "SELECT tblGebruiker.GebruikersID FROM tblGebruiker WHERE tblGebruiker.GebruikersNaam = @Naam AND tblGebruiker.GebruikersVoornaam = @VNaam;"
GebruikersIDComm.Parameters.AddWithValue("@Naam", txtNaam.Text)
GebruikersIDComm.Parameters.AddWithValue("@VNaam", txtVNaam.Text)
intGebruikersID = Integer.Parse(GebruikersIDComm.ExecuteScalar)
'RubriekID uit de database halen
RubriekIDComm.CommandText = "SELECT tblRubriek.RubriekID FROM tblRubriek WHERE tblRubriek.RubriekNaam = @RubriekNaam"
RubriekIDComm.Parameters.AddWithValue("@RubriekNaam", lstRubriek.SelectedItem.ToString)
intRubriekID = Integer.Parse(RubriekIDComm.ExecuteScalar)
'Artikel gegevens aan de database toevoegen
VerkopenCommArtikel.CommandText = "INSERT INTO tblArtikel (ArtikelBeschrijving, ArtikelPrijs, RubriekID, ArtikelAankoopdatum, ArtikelTekoopgezet, ArtikelBeschikbaar, GebruikersID) VALUES ( @ArtikelBeschrijving, @ArtikelPrijs, @RubriekID, @ArtikelAankoopdatum, @ArtikelTekoopgezet, @ArtikelBeschikbaar, @GebruikersID)"
VerkopenCommArtikel.Parameters.AddWithValue("@ArtikelBeschrijving", txtArtikelBeschrijving.Text)
VerkopenCommArtikel.Parameters.AddWithValue("@ArtikelPrijs", txtArtikelPrijs.Text)
VerkopenCommArtikel.Parameters.AddWithValue("@RubriekID", intRubriekID)
VerkopenCommArtikel.Parameters.AddWithValue("@ArtikelAankoopdatum", CalAankoop.SelectedDate)
VerkopenCommArtikel.Parameters.AddWithValue("@ArtikelTekoopgezet", calVerkoop.SelectedDate)
VerkopenCommArtikel.Parameters.AddWithValue("@ArtikelBeschikbaar", True)
VerkopenCommArtikel.Parameters.AddWithValue("@GebruikersID", intGebruikersID)
VerkopenCommArtikel.ExecuteNonQuery()
VerkopenConn.Close()
End If
System.Web.HttpContext.Current.Response.Write("<SCRIPT LANGUAGE=""JavaScript"">alert(""Jouw artikel staat nu te koop"")</SCRIPT>")
End Sub
Protected Sub bntVerzenden_Click(发送者作为对象,e作为事件参数)处理bntVerzenden。单击
Dim sqlCommand作为字符串
Dim intGebruikersID,intRubriekID为整数
将VerkopenConn变暗为新的OleDb.OleDb连接
Dim VerkopenCommArtikel、VerkopenCommGebruiker、GebruikersIDComm、RubriekIDComm、EmailComm作为新的OleDb.OleDbCommand
VerkopenConn.ConnectionString=My.Settings.SvShopConnection
VerkopenCommArtikel.Connection=VerkopenConn
VerkopenCommGebruiker.Connection=VerkopenConn
GebruikersIDComm.Connection=VerkopenConn
RubriekIDComm.Connection=VerkopenConn
EmailComm.Connection=VerkopenConn
“电子邮件控制”
sqlCommand=“从tblGebruiker中选择*,其中GebruikersEmail=”&txtEmail.Text&“
EmailComm.CommandText=sqlCommand
如果VerkopenConn.State=ConnectionState.Closed,则VerkopenConn.Open()
如果EmailComm.ExecuteOnQuery=0,则
“Gebruiker gegevens aan de database toevoegen
VerkopenCommGebruiker.CommandText=“插入tblGebruiker(GebruikersNaam、GebruikersVoornaam、gebruikeremail、gebruikergsm)值(@GebruikersNaam、@GebruikersVoornaam、@gebruikeremail、@gebruikergsm)”
VerkopenCommGebruiker.Parameters.AddWithValue(“@GebruikersNaam”,txtNaam.Text)
VerkopenCommGebruiker.Parameters.AddWithValue(“@GebruikersVoornaam”,txtVNaam.Text)
VerkopenCommGebruiker.Parameters.AddWithValue(“@gebruikerEmail”,txtEmail.Text)
VerkopenCommGebruiker.Parameters.AddWithValue(“@gebruikersgm”,txtgms.Text)
VerkopenCommGebruiker.ExecuteNonQuery()
'GebruikersID de database halen
GebruikersIDComm.CommandText=“从tblGebruiker中选择tblGebruiker.GebruikersID,其中tblGebruiker.GebruikersNaam=@Naam和tblGebruiker.GebruikersVoornaam=@VNaam;”
GebruikersIDComm.Parameters.AddWithValue(“@Naam”,txtNaam.Text)
GebruikersIDComm.Parameters.AddWithValue(“@VNaam”,txtVNaam.Text)
intGebruikersID=Integer.Parse(GebruikersIDComm.ExecuteScalar)
“鲁布瑞基德·德·海伦
RubriekIDComm.CommandText=“从tblRubriek中选择tblRubriek.RubriekID,其中tblRubriek.RubriekNaam=@RubriekNaam”
RubriekIDComm.Parameters.AddWithValue(“@RubriekNaam”,lstRubriek.SelectedItem.ToString)
intRubriekID=Integer.Parse(RubriekIDComm.ExecuteScalar)
“Artikel gegevens和toevoegen数据库
VerkopenCommArtikel.CommandText=“插入到tblArtikel(ArtikelBeschrijing、ArtikelPrijs、RubriekID、Artikelaaankoopdatum、ArtikelTekoopgezet、ArtikelBeschikbaar、GebruikerId)值(@ArtikelBeschrijing、@Artikid、@Artikelaaankoopdatum、@ArtikelTekoopgezet、@ArtikelBeschikbaar、@GebruikerId)”
VerkopenCommArtikel.Parameters.AddWithValue(“@ArtikelBeschrijving”,txtaritekelbeschrijving.Text)
VerkopenCommArtikel.Parameters.AddWithValue(“@ArtikelPrijs”,txtArtikelPrijs.Text)
VerkopenCommArtikel.Parameters.AddWithValue(“@RubriekID”,intRubriekID)
VerkopenCommArtikel.Parameters.AddWithValue(“@ArtikelAankoopdatum”,calankoop.SelectedDate)
VerkopenCommArtikel.Parameters.AddWithValue(“@ArtikelTekoopgezet”,calVerkoop.SelectedDate)
VerkopenCommArtikel.Parameters.AddWithValue(“@ArtikelBeschikbaar”,True)
VerkopenCommArtikel.Parameters.AddWithValue(“@gebruikerId”,intgebruikerId)
VerkopenCommArtikel.ExecuteNonQuery()
VerkopenConn.Close()
其他的
'GebruikersID de database halen
GebruikersIDComm.CommandText=“从tblGebruiker中选择tblGebruiker.GebruikersID,其中tblGebruiker.GebruikersNaam=@Naam和tblGebruiker.GebruikersVoornaam=@VNaam;”
GebruikersIDComm.Parameters.AddWithValue(“@Naam”,txtNaam.Text)
GebruikersIDComm.Parameters.AddWithValue(“@VNaam”,txtVNaam.Text)
intGebruikersID=Integer.Parse(GebruikersIDComm.ExecuteScalar)
“鲁布瑞基德·德·海伦
RubriekIDComm.CommandText=“从tblRubriek中选择tblRubriek.RubriekID,其中tblRubriek.RubriekNaam=@RubriekNaam”
RubriekIDComm.Parameters.AddWithValue(“@RubriekNaam”,lstRubriek.SelectedItem.ToString)
intRubriekID=Integer.Parse(RubriekIDComm.ExecuteScalar)
“Artikel gegevens和toevoegen数据库
VerkopenCommArtikel.CommandText=“插入到tblArtikel(ArtikelBeschrijing、ArtikelPrijs、RubriekID、Artikelaaankoopdatum、ArtikelTekoopgezet、ArtikelBeschikbaar、GebruikerId)值(@ArtikelBeschrijing、@Artikid、@Artikelaaankoopdatum、@ArtikelTekoopgezet、@ArtikelBeschikbaar、@GebruikerId)”
VerkopenCommArtikel.Parameters.AddWithValue(“@ArtikelBeschrijving”,txtaritekelbeschrijving.Text)
VerkopenCommArtikel.Parameters.AddWithValue(“@ArtikelPrijs”,txtArtikelPrijs.Text)
VerkopenCommArtikel.Parameters.AddWithValue(“@RubriekID”,intRubriekID)
VerkopenCommArtikel.Parameters.AddWithValue(“@ArtikelAankoopdatum”,calankoop.SelectedDate)
VerkopenCommArtikel.Parameters.AddWithValue(“@ArtikelTekoopgezet”,calVerkoop.SelectedDate)
VerkopenCommArtikel.Parameters.AddWithValue(“@ArtikelBeschikbaar”,True)
VerkopenCommArtikel.Parameters.AddWithValue(“@gebruikerId”,intgebruikerId)
VerkopenCommArtikel.ExecuteNonQuery()
VerkopenConn.Close()
如果结束
System.Web.HttpContext.Current.Response.Write(“警报”(“Jouw artikel staat nu te koop”))
端接头
您应该有一些id字段,如电子邮件或全名。您可以在此列a上创建唯一索引,并在插入时捕获异常。或者烧一棵冷杉
SqlConnection Conn=new SqlConnection(your_connectionstring);
SqlCommand command = new SqlCommand("select * from tblGebruiker where GebruikersEmail='" + emailid + "'", Conn);
DataTable dtl = new DataTable();
SqlDataAdapter sqlDA = new SqlDataAdapter(command);
sqlDA.Fill(dtl);
if (dtl.Rows.Count > 0)
{
Response.Write("<script>alert('User already registered')</script>");
}
else
{
VerkopenCommGebruiker.CommandText = "INSERT INTO tblGebruiker (GebruikersNaam, GebruikersVoornaam, GebruikersEmail, GebruikersGSM) VALUES (@GebruikersNaam, @GebruikersVoornaam, @GebruikersEmail, @GebruikersGSM)"
VerkopenCommGebruiker.Parameters.AddWithValue("@GebruikersNaam", txtNaam.Text)
VerkopenCommGebruiker.Parameters.AddWithValue("@GebruikersVoornaam", txtVNaam.Text)
VerkopenCommGebruiker.Parameters.AddWithValue("@GebruikersEmail", txtEmail.Text)
VerkopenCommGebruiker.Parameters.AddWithValue("@GebruikersGSM", txtGsm.Text)
If VerkopenConn.State = ConnectionState.Closed Then VerkopenConn.Open()
VerkopenCommGebruiker.ExecuteNonQuery()
}