Hallo,
mein Progrämmchen zum Auslesen aller Datenbanken eines Servers, der Tabellen und Spalten nimmt langsam Formen an. Ich habe allerdings ein kleines Problem, bei dem ich nicht weiterkomme. Einer der Datenbanknamen beginnt mit "www.". (z.B. "www.test.de"). Möchte ich die Tabellen auslesen, kommt es zu folgender Exception:
java.sql.SQLException: [Microsoft][ODBC SQL Server Driver][SQL Server]Der Server 'www' konnte in sysservers nicht gefunden werden. Führen Sie sp_addlinkedserver aus, um den Server zu sysservers hinzuzufügen.
Muss ich den String "catalog" irgendwie escapen?
Mit dem Microsoft-üblichen
gings nicht bei mir, selber fehler.
Viele Grüße
Andreas
mein Progrämmchen zum Auslesen aller Datenbanken eines Servers, der Tabellen und Spalten nimmt langsam Formen an. Ich habe allerdings ein kleines Problem, bei dem ich nicht weiterkomme. Einer der Datenbanknamen beginnt mit "www.". (z.B. "www.test.de"). Möchte ich die Tabellen auslesen, kommt es zu folgender Exception:
java.sql.SQLException: [Microsoft][ODBC SQL Server Driver][SQL Server]Der Server 'www' konnte in sysservers nicht gefunden werden. Führen Sie sp_addlinkedserver aus, um den Server zu sysservers hinzuzufügen.
Code:
for (Enumeration<String> en = ms.getCatalogs().keys(); en.hasMoreElements() ;) {
String catalog = en.nextElement();
try {
db.setCatalog(catalog);
ResultSet rsTables = dbm.getTables(catalog, null, null, null);
while(rsTables.next()) {
ModelCatalogTable table = new ModelCatalogTable();
table.setCat(rsTables.getString("TABLE_CAT"));
table.setSchem(rsTables.getString("TABLE_SCHEM"));
table.setName(rsTables.getString("TABLE_NAME"));
table.setType(rsTables.getString("TABLE_TYPE"));
}
} catch (Exception e) {
System.out.println("Fehler beim Laden von " + catalog);
e.printStackTrace();
break;
}
}
Muss ich den String "catalog" irgendwie escapen?
Mit dem Microsoft-üblichen
Code:
"[" + catalog + "]"
Viele Grüße
Andreas