public class normal extends Activity implements OnClickListener{
private Button zurueck;
private Button jetztsenden;
TextView resultArea; // tut
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.normal);
resultArea= (TextView) findViewById(R.id.resultArea);
resultArea.setText("............"); //tut
zurueck = (Button) findViewById(R.id._zurueck);
zurueck.setOnClickListener(this);
jetztsenden = (Button) findViewById(R.id.jetzt_senden);
jetztsenden.setOnClickListener(this);
public void onClick(View v)
{
if (v == zurueck)
{
Intent intent = new Intent(this, MainActivity.class);
this.startActivity(intent);
}
if (v == jetztsenden)
{
/// postgressql
String retval = "";
try {
Class.forName("org.postgresql.Driver");
} catch (ClassNotFoundException e) {
e.printStackTrace();
retval = e.toString();
}
String url = "jdbc:postgresql://192.168.178.111/meinebank?user=postgres";
Connection conn;
try {
DriverManager.setLoginTimeout(5);
conn = DriverManager.getConnection(url);
Statement st = conn.createStatement();
String sql;
sql = "SELECT * FROM kunden";
ResultSet rs = st.executeQuery(sql);
while(rs.next()) {
retval = rs.getString(1);
}
rs.close();
st.close();
conn.close();
} catch (SQLException e) {
e.printStackTrace();
retval = e.toString();
resultArea.setText(e.toString()); ///////// Es kommt eine Fehlermeldung
}
}
}
//AB hier tut
// Bis hier tut
}
Ich drücke den Button und die Zeile schreibt mir folgendes in mein Fenster:
resultArea.setText(e.toString());
org.postgresql.util.PSQLException: Etwas Ungewöhnliches ist passiert, das den Treiber fehlschlagen ließ. Bitte teilen Sie diesen Fehler mit.
danke für die Doku.
Dieser Code habe ich mit Java (ohne Android) ausgeführt, geht 1a !!! Ich bekomme eine Tabelle erstellt.
Über dem Code steht noch main blalbal MEHR NICHT !!! Dieses Stück Code habe ich 1 zu 1 in meinem Button reingezogen.Kompiliert, Button gedrückt und es wird KEINE TABELLE erstellt !!!
Connection conn1 = null;
try {
// Connect method #1
String dbURL1 = "jdbc:postgresql://192.168.178.111:5432/Felkass?user=postgres";
conn1 = DriverManager.getConnection(dbURL1);
if (conn1 != null)
{
System.out.println("Connected to database #1");
}
Statement stmt = null;
stmt = conn1.createStatement();
String sql = "CREATE TABLE COMPANYjxxx " +
"(ID INT PRIMARY KEY NOT NULL," +
" NAME TEXT NOT NULL, " +
" AGE INT NOT NULL, " +
" ADDRESS CHAR(50), " +
" SALARY REAL)";
stmt.executeUpdate(sql);
stmt.close();
conn1.close();
} catch (SQLException ex) {
ex.printStackTrace();
} finally {
try {
if (conn1 != null && !conn1.isClosed()) {
conn1.close();
}
} catch (SQLException ex) {
ex.printStackTrace();
}
}
Also wenn ich die Exception richtig verstehe (02-06 20:22:56.704: W/System.err(19746): java.sql.SQLException: No suitable driver), dann gibt es in deiner Android-Umgebung nicht die richtigen Treiber, oder sowas in der Richtung. Oder der DriverManager findet den nicht, irgendwas in der Richtung. Auf jeden Fall würde ich hier mal das Environment von Java genauer prüfen.