Я пытался вставить запись в базу данных, поэтому я создал метод insert. проблема заключается в том, что я получаю эту ошибкуОшибка ввода данных в базу данных
java.sql.SQLException: No value specified for parameter 7
вот мой код
public void InsertDataInDB (Connection conn, Statement stmt, event MyNewEvent,String TableName){
try {
conn = DriverManager.getConnection(DB_URL, USER, PASS);
stmt = conn.createStatement();
//String Values = MyNewEvent.EventName+"', '"+MyNewEvent.Location+"', '"+MyNewEvent.Description+"', '"+MyNewEvent.Creator+"', '"+MyNewEvent.startDate+"', '"+MyNewEvent.endDate;
//Values = "'sjsjs','sss',''";
String sql = "INSERT INTO " + TableName+ " (EventName, Location, Description, Creater, StartDate, EndDate) VALUES (?, ?, ?, ?, ?, ?)" ;
PreparedStatement statement = conn.prepareStatement(sql);
statement.setString(1, MyNewEvent.EventName);
statement.setString(2, MyNewEvent.Location);
statement.setString(3, MyNewEvent.Description);
statement.setString(4, MyNewEvent.Creator);
statement.setString(5, MyNewEvent.startDate);
statement.setString(6, MyNewEvent.endDate);
statement.execute();
System.out.println("Successfully inserted record into database");
}
catch(SQLException se){
se.printStackTrace();
}//end finally try
}
Попробуйте заменить TableName на имя таблицы жестко запрограммированной базы данных и посмотреть, что произойдет. –
try ** String sql = "INSERT INTO [" + TableName + "] ([EventName]", [Location], [Description], [Creater], [StartDate], [EndDate]) VALUES (?,?,?,? ,?,?) "; ** –