M
migro
Gast
Hallo Java-Community,
ich bin Java Anfänger und komme mit der Übergabe von SQL Handlern in Methoden nicht ganz klar:
Problem:
Ich möchte in der Methode main zur DB connecten und hier eine Methode read_fs aufrufen. In dieser sollen nun einige SQL Anweisungen an die DB weitergegeben werden. Nur kennt dieser die Connection trotz übergebenen Handler nicht mehr.
Hier mal der Code:
und die Frage: Wieso kennt die Methode read_sf den sql Handler nicht mehr? Wenn ich die gleichen Anweisungen in der Main Methode aufrufe funktioniert es.
Ich danke euch schon mal
migro
ich bin Java Anfänger und komme mit der Übergabe von SQL Handlern in Methoden nicht ganz klar:
Problem:
Ich möchte in der Methode main zur DB connecten und hier eine Methode read_fs aufrufen. In dieser sollen nun einige SQL Anweisungen an die DB weitergegeben werden. Nur kennt dieser die Connection trotz übergebenen Handler nicht mehr.
Hier mal der Code:
Code:
import java.sql.*;
import java.io.File;
public class init_fs {
public static void read_fs(File dir, int deep, java.sql.Connection sql)
{
Statement stm = sql.createStatement();
ResultSet rs = stm.executeQuery("show tables");
while (rs.next())
{
System.out.println(rs.getString(1));
}
stm.close();
}
public static void main(String[] args)
{
// Verbindung zu DB
java.sql.Connection sql;
String usr = "xxxx";
String pw = "xxxx";
// DB Treiber laden
try
{
Class.forName("com.mysql.jdbc.Driver");
}
catch(ClassNotFoundException cnfe)
{
System.out.println("Treiber kann nicht geladen werden: "+cnfe.getMessage());
}
try
{
sql = DriverManager.getConnection("jdbc:mysql://xxxx.de/j11", usr, pw);
// Das eigentlich Programm
// Umgebung setzen
File dir = new File("/xxxx1");
int deep = 0;
read_fs(dir, deep, sql);
}
catch (Exception e)
{
System.out.println("Exception: "+e.getMessage());
}
}
}
und die Frage: Wieso kennt die Methode read_sf den sql Handler nicht mehr? Wenn ich die gleichen Anweisungen in der Main Methode aufrufe funktioniert es.
Ich danke euch schon mal
migro