Mã này làm việc cho tôi: Tôi thiết lập các giá trị whit một INSERT và nhận được LAST_INSERT_ID() của giá trị này whit một SELECT; Tôi sử dụng java NetBeans 8.1, MySql và java.JDBC.driver
try {
String Query = "INSERT INTO `stock`(`stock`, `min_stock`,
`id_stock`) VALUES ("
+ "\"" + p.get_Stock().getStock() + "\", "
+ "\"" + p.get_Stock().getStockMinimo() + "\","
+ "" + "null" + ")";
Statement st = miConexion.createStatement();
st.executeUpdate(Query);
java.sql.ResultSet rs;
rs = st.executeQuery("Select LAST_INSERT_ID() from stock limit 1");
rs.next(); //para posicionar el puntero en la primer fila
ultimo_id = rs.getInt("LAST_INSERT_ID()");
} catch (SqlException ex) { ex.printTrace;}
Bạn có quyền truy cập vào MySQL nào khác ngoài JDBC - Quản trị viên MySQL không? Hoặc dòng lệnh? –
tôi có quyền truy cập vào quản trị mysql. tuy nhiên sự kiện này là như vậy. cơ sở dữ liệu mysql sẽ được tạo, sửa đổi, cập nhật, vv bằng cách sử dụng quản trị mysql nhưng sau đó tất cả các hoạt động được yêu cầu phải được thực hiện với java. – silverkid
Tốt hơn bao gồm việc tạo chỉ mục trong các tập lệnh để tạo cơ sở dữ liệu hơn là thông qua JDBC, rất có thể sau khi bạn có thể đã sử dụng chúng. –