我正在尝试在postgresql中插入一些数据。
PreparedStatement preparedStatement= connection.prepareStatement("INSERT INTO userr (joining_date, country_code, mobile_no, email_id) VALUES(?, ?, ?, ?) RETURNING id");
preparedStatement.setDate(1, currentDate);
preparedStatement.setInt(2, countryCode);
preparedStatement.setString(3, mobileNo);
preparedStatement.setString(4, emailId);
ResultSet x= preparedStatement.executeQuery();
当我在本地机器上试用时,一切正常。但当我把它转移到服务器时,它抛出了一个错误
org.postgresql.util.PSQLException:Error: null value in column "id" violates not-null constraint
我的table create语句如下所示。
private static void createTableUser(Connection connection) throws SQLException {
Statement statement= connection.createStatement();
statement.executeUpdate("CREATE TABLE USERR"
+"("+
"id SERIAL,"+
"first_name VARCHAR(20),"+
"middle_name VARCHAR(20),"+
"last_name VARCHAR(20),"+
"age INTEGER,"+
"image_url VARCHAR(250),"+
"joining_date DATE ,"+
"country_code INTEGER,"+
"mobile_no VARCHAR(20),"+
"email_id VARCHAR(20),"+
"CONSTRAINT pk_user PRIMARY KEY (id)"+
")"
);
statement.close();
}
我不知道为什么会发生这样的事情,即使它在当地运作良好。
n、 b:userr的schema包含“id”作为主键,还有许多其他的。
1条答案
按热度按时间rbpvctlc1#
id列没有链接到序列的默认值,您也不提供此值。