下面的脚本教您如何获得自动增长的MySQL主键,如果您对MySQL主键方面感兴趣的话,不妨一看,相信对您学习MySQL主键方面会有所启迪。
成都创新互联专业为企业提供吉木乃网站建设、吉木乃做网站、吉木乃网站设计、吉木乃网站制作等企业网站建设、网页设计与制作、吉木乃企业网站模板建站服务,十多年吉木乃做网站经验,不只是建网站,更提供有价值的思路和整体网络服务。
- import java.sql.*;
- public class GetKey {
- ResultSet rs = null;
- Connection conn = null;
- Statement stmt = null;
- // 加入同一个连接发生其他查询,Key会被重写所以不准确
- public void getId() {
- try {
- getConnect gc = new getConnect();
- conn = gc.getconn();
- Statement stmt = conn.createStatement();
- stmt.executeUpdate("insert into tb (name) values ('Key')");
- rs = stmt.executeQuery("SELECT LAST_INSERT_ID()");
- int autoIncKeyFromFunc = -1;
- if (rs.next()) {
- autoIncKeyFromFunc = rs.getInt(1);
- System.out.println("autoIncKeyFromFunc: " + autoIncKeyFromFunc);
- }
- } catch (Exception e) {
- System.out.print("有异常发生!");
- }
- }
- // getGeneratedKeys()是每次创建一个Statement 实例,所以是安全的!
- public void getId_() {
- try {
- getConnect gc = new getConnect();
- conn = gc.getconn();
- stmt = conn.createStatement(java.sql.ResultSet.TYPE_FORWARD_ONLY,
- java.sql.ResultSet.CONCUR_UPDATABLE);
- stmt.executeUpdate("insert into tb (name) values ('x')");
- int autoIncKeyFromApi = -1;
- rs = stmt.getGeneratedKeys();
- if (rs.next()) {
- autoIncKeyFromApi = rs.getInt(1);
- System.out.println("Key returned from getGeneratedKeys():"
- + autoIncKeyFromApi);
- }
- } catch (Exception e) {
- System.out.print("有异常发生!");
- }
- }
- public static void main(String[] args) {
- GetKey get = new GetKey();
- get.getId();
- get.getId_();
- }
- }
【编辑推荐】
MySQL主键的设计原则
MySQL分区的优点
Mysql分区表对函数的限制
定义MySQL事务的例子
创建MySQL存储过程示例
本文题目:获得自动增长的MySQL主键
本文URL:http://www.gawzjz.com/qtweb2/news0/4300.html
网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联