# Problem mit Java + MS sql (insert)



## emptysoul (30. November 2007)

Hallo,
also als erstes einmal habe ich mir eine eigene Klasse geschrieben für den Datenbank Zugriff. Soweit funktioniert auch alles, bloss das einzige Problem ist das ich keine "INSERT" absetzen kann.
Die Methode sieht wie folgt aus:

```
public void setInsert(String query) throws SQLException{
		int error = 0;
		try{
			stmt = con.createStatement();
		}
		catch (SQLException ex){System.out.println(ex.toString()); error = 1;}
		
		if(error == 0) {
			try{
				stmt.executeUpdate(query);
			}
			catch (SQLException ex){System.out.println(ex.toString()); error = 1;}
		}
	}
```

Aufruf in einer anderen Klasse:

```
Database db = new Database();
String query = "insert into sys_user(pk_user, lname, fname, rights) values ('1', 'Mustermann', 'Max' , '99999')";
db.setInsert(query);
db.closeConnection;
```

Sobald ich den setInsert Befehl aufrufe meckert er wie folgt rum:
Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException at Database.setInsert(database.java:72)

Ich weiss langsam echt nicht mehr weiter...
Ich bin für jede Hilfe dankbar!

mfg Sven


----------



## MeinerEiner_80 (30. November 2007)

Moin!

```
stmt = con.createStatement();
```
Und wo hast du dieses Connection Objekt erstellt? Ich schätze mal, das wird null sein...

*grüssle*
MeinerEiner


----------



## emptysoul (30. November 2007)

wah ich hab mal wieder zu schnell programmiert und hab meine schöne Methode setConnection() vergessen 

```
public void setConnection() throws SQLException, IOException {
	    try{Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");}
	    catch(ClassNotFoundException cnfe){System.out.println("Error = "+cnfe.toString());}
	    String connectionUrl = "jdbc:sqlserver://getHost();database=getDb();";
	    this.con = DriverManager.getConnection(connectionUrl, getDbUser(), getDbPassword());
	}
```
hmpf ^^ ich sollte nächstes mal besser gucken.

mfg Sven


----------

