Laden...

Datenbank Spalte Email auf bereits vorhande E-Mail Adresse überprüfen

Erstellt von rebus vor 12 Jahren Letzter Beitrag vor 12 Jahren 1.020 Views
R
rebus Themenstarter:in
3 Beiträge seit 2011
vor 12 Jahren
Datenbank Spalte Email auf bereits vorhande E-Mail Adresse überprüfen

hallo ich hab ein Formular das ich gerne erst an die Datenbank schicken möchte wenn ich sicher bin das die E-Mail Adresse bereits nicht schon existiert.

Dazu möchte ich gerne eine Datenbankabfrage basteln.

Die Abrage funktioniert soweit auch nur die "IF Abfrage" funktioniert nicht.
Hab gerade keine Ahnung woran das liegen könnte vielleicht muss ich noch nen Convert durchführen?

Er springt mir einfach nicht in den IF block

{
            string queryString = "SELECT eMail FROM TestDataBase where eMail = 'evamaierrr@t-online.de'";

            using (SqlConnection connection = new SqlConnection(@"Data Source=.\sqlexpress; Initial Catalog=Testdb2; Integrated Security=True"))
            {
                SqlCommand command = new SqlCommand(queryString, connection);
                connection.Open();

                SqlDataReader reader = command.ExecuteReader();
             // Call Read before accessing data.
                while (reader.Read())
                {
                            
                    string test;
   
                    test = Convert.ToString(reader[0]);

                   //if (TextBox1.Text == Convert.ToString(reader[0]))
                   //if (TextBox1.Text == (String.Format("{0}", reader[0])))
                 [B]  if (TextBox1.Text == reader[0])
                        {
                            Response.Write("yeah");
                            Response.Write(test);

                        }[/B]
                    Response.Write("Ausgabe: " + test);
                         
                    
                 }
                   reader.Close();

            }
C
2.121 Beiträge seit 2010
vor 12 Jahren

Hast du schon nachgeschaut was in reader[0] wirklich steht?
Das ganze ist aber nur Testcode nehm ich an?

R
rebus Themenstarter:in
3 Beiträge seit 2011
vor 12 Jahren

Bei Response.Write("Ausgabe: " + test); wird evamaierrr@t-online.de

mit test = Convert.ToString(reader[0]);

Ausgegeben das verwirrt mich ja gerade ;-/

P
48 Beiträge seit 2005
vor 12 Jahren

Hallo,

mit dem SQL-Server kannst Du die IF-Abfage im TSQL durchführen:

IF NOT EXISTS (SELECT * FROM Testdatabase WHERE eMail=@email)
BEGIN
INSERT INTO Testdatabase (...) VALUES (...);
END

MySql kennt diese Syntax glaube ich nicht

--
mfG.
Marcel Eckhoff

C
2.121 Beiträge seit 2010
vor 12 Jahren

Bei Response.Write("Ausgabe: " + test); wird evamaierrr@t-online.de

mit test = Convert.ToString(reader[0]);

Ausgegeben das verwirrt mich ja gerade ;-/

Dann hängt es noch davon ab was in der Textbox steht. Mit dem Debugger kannst du das ja der Reihe nach testen und auch schauen was der Vergleich ergibt.
Vielleicht musst du reader[0] auch nur in einen String casten, damit der Vergleich keine Objektreferenzen vergleicht. Kann ich grad nicht sagen.

Und der Tip von Profox ist natürlich auch vorzuziehen, statt das mit einem extra SELECT zu lösen.

R
rebus Themenstarter:in
3 Beiträge seit 2011
vor 12 Jahren

Super Danke!

Ich werds jetzt mal mit einer IF-Abfage im TSQL versuchen!

Gestern hat irgendwie gar nix funktioniert leider ;-/

Heute siehts da schon besser aus...