[英]MySql Java auto increment
我對prepareStatement中的自動遞增值有問題。 這是我的數據庫
CREATE TABLE `book` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`isbn` varchar(10) NOT NULL,
`title` varchar(20) NOT NULL,
`pages` int(11) NOT NULL,
`price` decimal(5,2) NOT NULL,
PRIMARY KEY (`id`),
UNIQUE KEY `isbn` (`isbn`)
這是我的prepareStatement:
String title = fieldTitle.getText();
String isbn = fieldISBN.getText();
double price = Double.parseDouble(fieldPrice.getText());
int pages = Integer.parseInt(fieldPages.getText());
conn = DBUtil.connect();
try {
prepState = conn.prepareStatement("insert into book values(?,?,?,?)");
prepState.setString(1, isbn);
prepState.setString(2, title);
prepState.setInt(3, pages);
prepState.setDouble(4, price);
prepState.execute();
但是,當我填寫字段時,出現以下錯誤:
java.sql.SQLException:列數與第1行的值數不匹配。我知道當數據庫中的字段自動遞增時,我不必將其放在查詢中...
有任何想法嗎?
修改您的查詢以包括列名稱:-
INSERT INTO book (isbn, title, pages, price) VALUES (?,?,?,?)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.