Я построил БД, и сейчас я пишу функцию, которая вставляет данные в эту БД.Я полагаю, что проблема в том, чего я не вижу, я получаю ошибку:
Столбцы типа 'VARCHAR' не могут содержать значения типа 'INTEGER'.
хотя я полностью понимаю, что это значит, я просто не могу заставить его работать.
вот мой код для вставки:
public static void insertIntoCouponsDB(long COMPANY_ID, String TITLE, String START_DATE, String END_DATE, int AMOUNT, String TYPE, String MESSAGE, double PRICE, String IMAGE) throws SQLException {
Connection connection = DriverManager.getConnection(connectionString);
String sql = String.format("insert into Coupons (COMPANY_ID, TITLE, START_DATE,END_DATE,AMOUNT,TYPE,MESSAGE,PRICE,IMAGE) values (%d, '%s', '%s','%s',%d,'%s','%s',%.2f,'%s')",COMPANY_ID,TITLE,START_DATE,END_DATE,AMOUNT,TYPE,MESSAGE,PRICE,IMAGE);
PreparedStatement preparedStatement = connection.prepareStatement(sql, PreparedStatement.RETURN_GENERATED_KEYS);
preparedStatement.executeUpdate();
ResultSet resultSet = preparedStatement.getGeneratedKeys();
resultSet.next();
int id = resultSet.getInt(1);
System.out.println("Insertion into Coupons DONE !!! New ID: " + id);
}
}
и это код для создания табке:
public static void buildCouponsDB() {
try {
Connection connection = DriverManager.getConnection(connectionString);
Statement statement = connection.createStatement();
String sql = "create table Coupons (" +
"ID bigint not null primary key " +
"generated always as identity(start with 1, increment by 1), "+
"COMPANY_ID bigint not null, "+
"TITLE varchar(50) not null, "+
"START_DATE date not null, "+
"END_DATE date not null, "+
"AMOUNT integer not null, "+
"TYPE varchar(50) not null, "+
"MESSAGE varchar(250) not null, "+
"PRICE double not null, "+
"IMAGE varchar(100) not null)";
statement.executeUpdate(sql);
System.out.println("Coupons Table has been Created Succesfully !!");
} catch (Exception ex) {
System.out.println(ex.getMessage());
}
}
Кто-нибудь может помочь?Я начинающий, так что извините, если это легко вопрос, но все же, с просьбой о помощи.Заранее спасибо.