2016-08-03 6 views
0

ich in der Lage bin zu H2-Datenbank von meiner C# .NET-Anwendung mit Hilfe der unten genannten URLArbeiten mit H2-Datenbank von C#

http://www.h2database.com/html/advanced.html#microsoft_dot_net

org.h2.Driver.load(); 
Connection conn = DriverManager.getConnection("jdbc:h2:~/test", "sa", "sa"); 
Statement stat = conn.createStatement(); 

//Working 
ResultSet rs = stat.executeQuery("SELECT 'Hello World'"); 
while (rs.next()) 
{ 
    Console.WriteLine(rs.getString(1)); 
} 

//Not Working 
ResultSet rs1 = stat.executeQuery("SELECT * FROM TEST"); 
while (rs1.next()) 
{ 
    Console.WriteLine(rs1.getString(1)); 
} 

Ich habe den Code „SELECT‚Hallo Welt geändert verbinden '"bis" SELECT * FROM TEST ", wobei" TEST "der Tabellenname ist. Ich bekomme Tabelle nicht gefunden Fehler. Aber die Tabelle ist in der H2-Datenbank vorhanden.

BEARBEITEN @ Nick Bull- Vielen Dank für Ihre Hilfe. Aus irgendeinem Grund ist die in "H2 console" erstellte Tabelle nicht über C# -Code zugänglich. Ich habe mit Ihrer Logik versucht, die Tabelle aus C# -Code zu erstellen, es hat funktioniert !!. Aber es wird nicht in der H2-Konsole angezeigt.

Eine weitere Sache, „executeQuery“ hat nicht funktioniert für mich, die neue Tabelle zu erstellen, benutzte ich „executeUpdate“ (für jemanden, kann es helfen)

Antwort

0

Ich habe h2 viel mit Java verwendet. Ich denke, dass der Grund, warum Sie auf die Tabelle in C# zugreifen können, wenn Sie sie in C# erstellt haben, darin liegt, dass die Datenbank, die Sie betrachten, eine andere ist als die, die Sie in der Konsole betrachten. Vielleicht überprüfen Sie Ihre Verbindungszeichenfolge (sowohl in C# als auch in der Konsole).

Datenbanken werden erstellt, wenn sie nicht standardmäßig vom h2-Treiber vorhanden sind.