返回sql连接sqlite

时间:2013-08-06 01:14:51

标签: java sql methods return

按钮 - > conectaDB(连接数据库) - > inseredadosBD(将数据插入数据库)

如何将连接返回到inseredadosBD,从方法插入?

按钮事件:

public void inseredadosBD(String grupo, int protocolo, String dataentrada, String escrevente, String auxiliar, String datalimite) {
    conectaBD();
-> here i will use the insert, i was planning to use something like conn.execute.. from here, but
}

我尝试了conectaBD(连接conectado);  试过conectaBD(conectado);

做一些类似conectado.exe的..,但是没有用:/

方法conectaBD

public class metodos {
    public Connection conectado;
    public Connection conn;
    public Connection conectaBD() {
        //metodo responsavel por fazer a conexão com o BD
        try {
        try {
            Class.forName("org.sqlite.JDBC");
        } catch (ClassNotFoundException e) {
            e.printStackTrace();
        }
        conn = DriverManager.getConnection("jdbc:sqlite:c:\\grupo1.db");
//      Statement stm = conn.createStatement();  

        if (conn != null) {
            System.out.println("Conectou" );
//          fechaconexaoBD(conn);
        } else {
            System.out.println("Conexão Fail");
        }
        } catch (SQLException e) {
            System.out.println("Erro de conexão " );
            e.printStackTrace();
        }   
        return conn;
    }

..here go the rest of the code...

忘了//,我只是在尝试/测试事物:s

1 个答案:

答案 0 :(得分:1)

您可能还想包含您收到的错误。

  

我尝试了conectaBD(连接conectado);尝试了conectaBD(conectado);

这些不起作用,因为没有定义方法conectaBDConnection作为参数。

修改根据您的评论,

  

是的,我有方法conectaBD ...它在第一个代码块!!不是一个方法因为“连接”??问题是这样,我如何将连接传递给inseredadosBD,这是我的问题:

是的,您确实使用方法conectaBD(),但是您尝试调用尚未定义的方法conectaBD(Connection)

但我可以提出几个选择:

  1. inseredadosBD()方法放在metodos课程中,这样您就可以访问Connection个变量。因此,在致电conectaBD后,您会希望使用conn作为您的连接

  2. 将连接作为参数传递给inseredadosBD()方法,然后使用该连接。像inseredadosBD(String.... , Connection c)一样 编辑如果你这样做,那么你不要在这个方法中调用conectaBD(),在调用此方法之前调用它,然后调用此方法,就像这个inseredadosBD(/*data you want to insert*/, conn)那样在这个方法中你的{ {1}}被称为Connection,因此您可以使用连接对象c,如下所示

    c
  3. 在您的public void inseredadosBD(String grupo, int protocolo, String dataentrada, String escrevente, String auxiliar, String datalimite, Connection c) { c.//What ever connection method you want to use //here i will use the insert, i was planning to use something like conn.execute. } 课程中实例化...不是很漂亮