# Ausgabetabelle nicht gefunden



## brasilian (25. Jun 2005)

Hallo,

ich arbeite seit ein paar Wochen mit Access-Datenbanken unter Java.
Ich habe bis jetzt immer fertig erstellte DBs manipuliert und habe nun mal meine eigene kleine Datenbank erstellt mit welcher ich gerne arbeiten möchte.

Das Problem ist nur, das ich mich zu DB connecten kann, mir aber beim einfügen eines Datensatzes gesagt wird, dass diese Ausgabetabelle nicht gefunden wird. Wie kann dies sein ?

Ich werde zur Hilfe noch einige Auszüge posten:

Protokoll-Datei


> 25.06.2005 11:03:42 DB.DB einfuegen
> ALLE: Problem beim Einfügen/ Ändern
> java.sql.SQLException: [Microsoft][ODBC Microsoft Access Driver] Ausgabetabelle 'LehrerDB' nicht gefunden.
> at sun.jdbc.odbc.JdbcOdbc.createSQLException(Unknown Source)
> ...



Datenbankaufbau







Als Programmsegemente dürfte dies die interessanteste Stelle sein

```
//Der Lehrer wird in der DB geschrieben
         this.speichere_Lehrer(neuerLehrer);		


....


//Der Lehrer wird in der DB geschrieben
	private void speichere_Lehrer(Lehrer lehrer)
	{
		
		/* Reihenfolge der SQL-Spalten:
		 * Vorname, Nachname, Unterstufe, Mittelstufe, Oberstufe,
		 * PrimärRaum, SekundärRaum, Fächer, MinStunden, MaxStunden
		 */
		
		//Der Name muss getrennt werden, es gibt min. zwei Tokens
		StringTokenizer zerhacken = new StringTokenizer(lehrer.getName()," ");		
		
		String query = "INSERT INTO LehrerDB VALUES " 
						+ "('" + zerhacken.nextToken() + "', '"
						      + zerhacken.nextToken() + "', '"
						      + lehrer.isUnterstufe() + "', '"
							  + lehrer.isMittelstufe() + "', '"
							  + lehrer.isOberstufe() + "', '" 
							  + lehrer.getPrimärRaum() + "', '"
							  + lehrer.getErsatzRaum() + "', '"
							  + lehrer.getUnterichtsfach().toString() + "', '"
							  + lehrer.getMinStunden() + "', '"
							  + lehrer.getMinStunden() + "')";
		
		System.out.println(query);
		
		int zeilen = db.einfuegen(query);	
			
		
		System.out.println("Eingefügte Zeilen: " + zeilen);


....



  public int einfuegen(String query)
  {

    int zeilen = -1;

    try
    {

      Statement stmt = con.createStatement();

      zeilen = stmt.executeUpdate(query);
    }
    catch(SQLException e)
    {
      log.setLevel(Level.ALL);
      log.log(Level.ALL, "Problem beim Einfügen/ Ändern", e);
    }

    return zeilen;
  }
```


Ich habe mir deb Query mal ausgeben gelassen, der sieht meiner Meinung nach in Ordnung aus:





> INSERT INTO LehrerDB VALUES ('AchtUHR', 'Pietter', 'false', 'false', 'true', '228 IVZ', '113 MTA', '[]', '10', '10')



Vielen Dank für eure zahlreichen Beiträge im Vorraus

Gruß

Brasi


----------



## Guest (25. Jun 2005)

INSERT INTO Lehrer
statt
INSERT INTO LehrerDB

:bae:


----------



## Guest (25. Jun 2005)

Übrigens, gewöhne Dir das Schreiben der Feldnamen in SQL Statements an.
So kann man besser nachvollziehen, was in die Tabellen eingefügt wird.

Also statt
INSERT INTO LehrerDB VALUES ('AchtUHR', ...)
lieber
INSERT INTO LehrerDB *(bezeichnung, ...)* VALUES ('AchtUHR', ...)


----------



## brasilian (26. Jun 2005)

Vielen Dank für deine Antworten.

Ich habe vor lauter Bäume den Wald nicht gesehen, doch das es nicht funktioniert hat leuchtet mir jetzt ganz klar ein.

Ich werde versuchen deinen Tipp zu beachten.

Gruß

CHristian


----------

