Ciao Ragazzi....
Qualcuno potrebbe dare un'occhiata a questo script???
In pratica é il tentativo di creazione di una tabella e dell'inserimento delle informazioni al suo interno....
Utilizzo degli arrayList che passo all'interno delle query....
Ma forse sbaglio qualcosa....
Vi posto il codice e l'errore...
codice:
package it.dpp.conn;
import it.dpp.exception.MyException;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.Statement;
import java.sql.SQLException;
import java.util.ArrayList;
public class ConnectionDB
{
public static void main(String[] args) throws MyException, SQLException
{
Connection con = null;
String nomeTabella = null;
ArrayList<String> arrayColumnName = new ArrayList<String>();
ArrayList<String> arrayRowValue = new ArrayList<String>();
arrayColumnName.add("Description@");
arrayColumnName.add("Comment@");
arrayRowValue.add("desc");
arrayRowValue.add("comm");
{
try
{
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
con = DriverManager.getConnection("jdbc:odbc:adonisDB", "ADONIS", "BPMS");
nomeTabella = new String("test");
Statement cmd = con.createStatement();
String qry = "CREATE TABLE "+nomeTabella+" (id int primary key);";
cmd.executeUpdate(qry);
System.out.println(qry);
String qry4 = "Insert into "+nomeTabella+" values ('1')";
cmd.executeUpdate(qry4);
for (int i = 0; i < arrayColumnName.size(); i++)
{
String qry2 = "ALTER TABLE "+nomeTabella+" " +
" ADD "+arrayColumnName.get(i)+" VARCHAR(50)";
cmd.executeUpdate(qry2);
System.out.println(qry2);
}
for (int j = 0; j < arrayRowValue.size(); j++)
{
String qry3 = "INSERT INTO "+nomeTabella+" ("+arrayColumnName+") VALUES ("+arrayRowValue.get(j)+")";
cmd.executeUpdate(qry3);
System.out.println(qry3);
}
{
System.out.println("Fatto");
}
}
catch (Exception e)
{
e.printStackTrace();
//throw new MyException ("Error Connection DB");
}
}
}
public void closeConnection (java.sql.Connection con)
{
try
{
if(!con.isClosed())
con.close();
}
catch (java.sql.SQLException e)
{
e.printStackTrace();
}
}
public Statement getStatement (java.sql.Connection c)
{
Statement st = null;
try
{
st = c.createStatement();
}
catch (java.sql.SQLException e)
{
e.printStackTrace();
}
return st;
}
}
java.sql.SQLException: [Microsoft][ODBC SQL Server Driver][SQL Server]Incorrect syntax near the keyword 'desc'.
at sun.jdbc.odbc.JdbcOdbc.createSQLException(Unknown Source)
at sun.jdbc.odbc.JdbcOdbc.standardError(Unknown Source)
at sun.jdbc.odbc.JdbcOdbc.SQLExecDirect(Unknown Source)
at sun.jdbc.odbc.JdbcOdbcStatement.execute(Unknown Source)
at sun.jdbc.odbc.JdbcOdbcStatement.executeUpdate(Unkn own Source)
at it.dpp.conn.ConnectionDB.main(ConnectionDB.java:53 )
CREATE TABLE test (id int primary key);
ALTER TABLE test ADD Description@ VARCHAR(50)
ALTER TABLE test ADD Comment@ VARCHAR(50)