2

我是 Java 新手。我想为考勤管理系统构建简单的 Java 应用程序。为此,我想在现有表中创建一个新列,列名应该是当前日期。我使用日期选择器获取当前日期. 我为此编写了以下代码,但表中的列名设置为“+s1+”。这是我的代码:

    String s="";  
    s=date.getText();//selected data from date picker
    s.replace(".","_");
    try{
       Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
       con = DriverManager.getConnection("jdbc:odbc:vasu");
       st = con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_UPDATABLE);
       //System.out.println("ALTER TABLE attendance  ADD "+s+" varchar(50);");
       rs = st.executeQuery("ALTER TABLE attendance  ADD '"+s+"' varchar(50);");
    }
    catch(Exception ex){
    }

任何人都可以帮助我提前谢谢。

4

1 回答 1

2

试试这个

executeUpdate如果查询正常,则返回 1,否则返回 0

String s="";  
s=date.getText();//selected data from date picker
s.replace(".","_");
try
{
    Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
    ResultSet acrs;
    String op = "jdbc:odbc:vasu";
    Connection cnn = DriverManager.getConnection(op,"username", "password");
    Statement mystmt = cnn.createStatement();

    int successOrFailure = mystmt.executeUpdate("ALTER TABLE attendance ADD '"+s+"' VARCHAR(50)");
    //executeUpdate return 1 if the query work properly otherwise it will return 0

}catch(Exception e)
{
    System.out.println("Exception:"+e);
    e.printStackTrace();
}
于 2013-03-02T05:56:40.773 回答