2017-03-16 3 views
-1

Ich versuche, Datenbank zu verwenden:Datenbank System.Data.SqlClient.SqlException

SqlConnection sqlcon = new SqlConnection(@"Data Source=(LocalDB)\MSSQLLocalDB;AttachDbFilename=D:\DB\LogiDB.mdf;Integrated Security=True;Connect Timeout=30"); 
      string query = "Select * from tbl_Login Where username = '" + textBox1.Text.Trim().ToLower() + "' and password = '" + textBox1.Text.Trim().ToLower() + "'"; 
      SqlDataAdapter sda = new SqlDataAdapter(query, sqlcon); 
      DataTable dtbl = new DataTable(); 
      sda.Fill(dtbl); 
      if (dtbl.Rows.Count == 1) 
      { 
       // 
      } 

meine Dateien ist:

dbo.Table.sql 
LogiDB.mdf 
LogiDB_log.ldf 
tbl_Login.sql  

nicht sicher, was ich falsch mache, aber wenn ich drücken Button habe ich diese mit der Linie sda.Fill(dtbl);:

An unhandled exception of type 'System.Data.SqlClient.SqlException' occurred in System.Data.dll 

Additional information: Invalid object name 'tbl_Login'. 
+1

nicht die Lösung für dieses Problem, aber bitte achten Sie auf [Bobby Tables] (http://bobby-tables.com/) –

+0

1. Ihre 'Sqlconnection' deutete nicht auf die Zieldatenbank , finden Sie die richtige SQL-Verbindungszeichenfolge, die Verbindungszeichenfolge hat nichts mit Ihren Datenbankdateien zu tun. Du könntest versuchen, einen im Visual Studio zu finden (keine OLE DB Verbindung, entferne 'Provider'); 2. Sie haben vergessen, die SQL-Verbindung zu öffnen, bevor Sie die Abfrage ausführen – LONG

+0

Speichern Sie keine Passwörter in der Datenbank aus verschiedenen Gründen. – Hans

Antwort

1

Wie der Fehler sagt: Invalid object name 'tbl_Login'

Dies könnte bedeuten:

  • tbl_Login Tabelle in Ihnen nicht Datenbank
  • Sie eine Verbindung zu falschen Datenbank
  • existiert

Da Sie tbl_Login.sql Skript haben, denke ich, es enthält t fähige Definition. Daher müssten Sie Skript ausführen, um eine Tabelle in Ihrer LogiDB-Datenbank zu erstellen.

Here there is example how to connect to local database

1

hier perfekt meinen Code Arbeit ist, du versuchen können und Vergleichen Sie Ihren Code

SqlConnection cn = new SqlConnection("Data Source=AVREST\\SQLEXPRESS;Initial Catalog=master;Integrated Security=True"); 
      cn.Open(); 
      SqlCommand cmd = new SqlCommand("select loginID,loginPassword from logintavle where loginID='" + textBox1.Text + "'and loginPassword='" + textBox2.Text + "'", cn); 
      SqlDataAdapter sda = new SqlDataAdapter(cmd); 
      //sda.SelectCommand = cmd; 
      DataTable dataset = new DataTable(); 
      sda.Fill(dataset); 
      if (dataset.Rows.Count > 0) 
Verwandte Themen