vous devriez remove
le ;
dans votre requête sql :
mauvaise requête :
prepareStatement("create table staff (staffname varchar(30) primary key);");
preparedStatement = connect.prepareStatement("insert into staff values(?);");
la requête correcte est :
prepareStatement("create table staff (staffname varchar(30) primary key)");
preparedStatement = connect.prepareStatement("insert into staff values(?)");
VÉRIFIEZ VOTRE REQUÊTE D'INSERTION
Et, je pense que votre INSERT les valeurs dans la base de données, cette requête est trop mauvaise, ont mentionné le tablename seulement, vous ne devez pas mentionner le columnname . vous devez donc ajouter le nom de la table avec votre requête.
mauvaise requête :
insert into staff values(?)
requête correcte :
INSERT INTO table_name
VALUES (value1,value2,value3,...);
référez-vous à ce lien :
http://www.w3schools.com/sql/sql_insert.asp
MISE À JOUR : 1
code erroné :
statement = connect.createStatement();
preparedStatement = connect
.prepareStatement("SELECT count(*)FROM information_schema.tables\n"
+ "WHERE table_schema = 'project' AND table_name = 'staff'");
rs = preparedStatement.executeQuery();
rs.next();
vous devriez changer comme :exemple
Class.forName(driverName).newInstance();
con=DriverManager.getConnection(connectionUrl+dbName,user,password);
st = con.createStatement();
String sql="SELECT * FROM employees";
rs=st.executeQuery(sql);
Remarque :
- vous ne devez pas appeler la requête sql.
- Et, vous utilisez
preparedStatement
pour appeler, vous devez passer àstatement
- le
preparedStatement
est impossible à résoudre.
comme,
string sql=....sql query...;
statement.executeQuery(sql)
mise à jour :2 :-->exemple
public class User
{
private String empname;
public String getEmpName()
{
return empname;
}
public void setEmpName(String empname)
{
this.empname=empname;
}
public void addUser(User user)
{
try
{
PreparedStatement ps;
ps=connection.prepareStatement("INSERT INTO employee (empname,empaddress,depname) VALUES (?,?,?)");
ps.setString(1, user.getEmpName());
ps.setString(2, user.getEmpAddress());
ps.setString(3, user.getDepName());
ps.executeUpdate();
}
catch(Exception e)
{
System.out.println(e);
}
}