Csharp Problem bei Datenbankverbindung
Hallo,
ich habe folgendes Problem:
Eine ASP Anwendung greift auf eine an eine Instanz angehängte Datenbank zu.
Dies wird geändert, die Datenbank wird nun fest auf einem SQLServer eingebunden. (SQL Server 2008 SP2)
Den ConnectionString der Anwendung habe ich bereits geändert und getestet, die Anwendung kann sich mit der Datenbank verbinden.
Mehr als die Verbindung öffnen oder schließen funktioniert jedoch nicht.
Bsp: "SELECT * FROM table1" funktioniert nicht. Der Debugger meldet # Ungültiger Objektname 'table1' #.
Gebe ich die gleiche Abfrage im SQL Managment Studio ein, wird diese anstandslos ausgeführt.
Mach ich syntaktisch etwas falsch? Ich habe bereits verschiedene Versionen dieses simplen Befehls probiert:
"SELECT * FROM table1"
"SELECT * FROM dbo.table1"
"SELECT * FROM Database.dbo.table1"
und das ganze noch mit [ und ] um die entsprechenden Teile.
Jedesmal meldet der Debugger jedoch, dass der Teil nach FROM ein Ungültiger Objektname sei.
Vielleicht kennt jm dieses Problem und weiß schnelle abhilfe, ich denke das ich im Moment nur einfach nicht durchblicke was da falsch sein soll.
Gruß Attix22
ich habe folgendes Problem:
Eine ASP Anwendung greift auf eine an eine Instanz angehängte Datenbank zu.
Dies wird geändert, die Datenbank wird nun fest auf einem SQLServer eingebunden. (SQL Server 2008 SP2)
Den ConnectionString der Anwendung habe ich bereits geändert und getestet, die Anwendung kann sich mit der Datenbank verbinden.
Mehr als die Verbindung öffnen oder schließen funktioniert jedoch nicht.
Bsp: "SELECT * FROM table1" funktioniert nicht. Der Debugger meldet # Ungültiger Objektname 'table1' #.
Gebe ich die gleiche Abfrage im SQL Managment Studio ein, wird diese anstandslos ausgeführt.
Mach ich syntaktisch etwas falsch? Ich habe bereits verschiedene Versionen dieses simplen Befehls probiert:
"SELECT * FROM table1"
"SELECT * FROM dbo.table1"
"SELECT * FROM Database.dbo.table1"
und das ganze noch mit [ und ] um die entsprechenden Teile.
Jedesmal meldet der Debugger jedoch, dass der Teil nach FROM ein Ungültiger Objektname sei.
Vielleicht kennt jm dieses Problem und weiß schnelle abhilfe, ich denke das ich im Moment nur einfach nicht durchblicke was da falsch sein soll.
Gruß Attix22
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 157387
Url: https://administrator.de/contentid/157387
Ausgedruckt am: 22.11.2024 um 04:11 Uhr
5 Kommentare
Neuester Kommentar
Hallo,
Möglich ist auch, dass du vielleicht doch zur falschen DB (oder Instanz) verbindest, und es dort die Tabelle nicht gibt. Das könnte man ja mal mit einem "SELECT * FROM sys.Tables" testen. Ist der Nutzer eigentlich entsprechend berechtigt?
Gruß
Filipp
Eine ASP Anwendung greift auf eine an eine Instanz angehängte Datenbank zu.
Dies wird geändert, die Datenbank wird nun fest auf einem SQLServer eingebunden. (SQL Server 2008 SP2)
Verstehe ich schonmal nicht. Eine Tabelle ist (in MS SQL) immer Teil einer DB, welche wiederum immer Teil einer MS SQL-Server-Instanz ist. Auf einem Server können mehrere Instanzen laufen, läuft dort nur eine, so ist es trotzdem eine Instanz.Dies wird geändert, die Datenbank wird nun fest auf einem SQLServer eingebunden. (SQL Server 2008 SP2)
Bsp: "SELECT * FROM table1" funktioniert nicht. Der Debugger meldet # Ungültiger Objektname 'table1' #.
Nicht ausgeschlossen ist, dass dein C#-Code falsch ist (die SQL-Statements musst du ja an die entsprechende ADO-Klasse übergeben).Möglich ist auch, dass du vielleicht doch zur falschen DB (oder Instanz) verbindest, und es dort die Tabelle nicht gibt. Das könnte man ja mal mit einem "SELECT * FROM sys.Tables" testen. Ist der Nutzer eigentlich entsprechend berechtigt?
"SELECT * FROM Database.dbo.table1"
DBs und Tabelle trennt man, soweit ich mich erinnere, mit zwei Punkten. Also: SELECT * FROM Database..Table"Gruß
Filipp
Hast du dich am Management Studio wirklich mit demselben User angemeldet wie deine Anwendung ?
Ich denke, du solltest bei dem benutzten User im SQL Server nochmal gucken, welche Default-Datenbank da eingetragen ist und ggf. auf die hier richtige ändern. Dann nochmal gucken, ob der User überhaupt Rechte auf diese Datenbank bekommen hat oder nur allgemein auf dem Server eingerichtet wurde. Das alleine sorgt noch nicht für Rechte auf die Daten.
Ich denke, du solltest bei dem benutzten User im SQL Server nochmal gucken, welche Default-Datenbank da eingetragen ist und ggf. auf die hier richtige ändern. Dann nochmal gucken, ob der User überhaupt Rechte auf diese Datenbank bekommen hat oder nur allgemein auf dem Server eingerichtet wurde. Das alleine sorgt noch nicht für Rechte auf die Daten.