Hallo,
ich hab folgendes Problem.
Ich schreibe im Moment ein einem Komandozeileninterpreter der hauptsächlich MYSQL-Datenbanken updatet und verändert.
Ich möchte nun eine Tabelle in eine XML-Datei schreiben und hierbei auch den Aufbau der Spalten ausgeben.
Es funktioniert auch alles super mit meinem Code, jedoch scheint es mir so, als würde der JDBC-Treiber den Datentyp TinyInt nicht richtig interpretieren und gibt mir als Datentyp ein Bit zurück....
Weiß einer woran das liegen kann?
Oder hat jemand ggf. einen alternativen vorschlag?
Unten mein Code mit dem ich mir Testweise alle Metadaten der Spalte ausgeben lasse. Jedoch erhalte ich wie gesagt bei einem TinyInt einen Bit als Typname und erhalte auch als TypID eine -7 (TinyInt = -6).
Edit: Achso meine Versionen sind:
Datenbankversion: 5.1.30-community
Treiberversion: mysql-connector-java-5.1.7
ich hab folgendes Problem.
Ich schreibe im Moment ein einem Komandozeileninterpreter der hauptsächlich MYSQL-Datenbanken updatet und verändert.
Ich möchte nun eine Tabelle in eine XML-Datei schreiben und hierbei auch den Aufbau der Spalten ausgeben.
Es funktioniert auch alles super mit meinem Code, jedoch scheint es mir so, als würde der JDBC-Treiber den Datentyp TinyInt nicht richtig interpretieren und gibt mir als Datentyp ein Bit zurück....
Weiß einer woran das liegen kann?
Oder hat jemand ggf. einen alternativen vorschlag?
Unten mein Code mit dem ich mir Testweise alle Metadaten der Spalte ausgeben lasse. Jedoch erhalte ich wie gesagt bei einem TinyInt einen Bit als Typname und erhalte auch als TypID eine -7 (TinyInt = -6).
Code:
Connection connection = tool.dbConnection.getConnection(dbVarName);
DatabaseMetaData dbMD = connection.getMetaData();
ResultSet tables = dbMD.getTables(null, null, "%", null);
while (tables.next()) {
System.out.println("Tabelle: " + tables.getString("TABLE_NAME"));
ResultSet columns = dbMD.getColumns(null, "&", tables.getString("TABLE_NAME"), null);
while (columns.next()) {
for(int column_index = 1; column_index < columns.getMetaData().getColumnCount(); column_index++){
System.out.println(" " + columns.getMetaData().getColumnName(column_index) + ":" + columns.getString(column_index));
}
System.out.println(" --------------------------");
}
System.out.println("-----------------------------------------------");
}
Edit: Achso meine Versionen sind:
Datenbankversion: 5.1.30-community
Treiberversion: mysql-connector-java-5.1.7
Zuletzt bearbeitet: