`

公开一个Mysql如何获得新插入Id的代码

阅读更多
原理:
    在Mysql中同一个连接执行了insert语句,接着执行SELECT LAST_INSERT_ID()可以获得刚刚插入的自增。
    下面公开一段相关的Java代码

/**
	 * 执行插入操作并且获得新的Id
	 * 
	 * @param dataSource
	 * @param sql
	 * @param params
	 * @return
	 * @throws SQLException
	 */
	public static int insertAndGetId(DataSource dataSource, String sql, Object[] params)
			throws SQLException {
		Connection con = dataSource.getConnection();
		PreparedStatement pstmt = con.prepareStatement(sql);
		try {
			for (int i = 1; i <= params.length; i++) {
				pstmt.setObject(i, params[i - 1]);
			}
			pstmt.executeUpdate();
			ResultSet rs = pstmt.executeQuery("SELECT LAST_INSERT_ID()");
			rs.next();
			int newId = rs.getInt(1);
			rs.close();
			return newId;
		} finally {
			try {
				pstmt.close();
			} finally {
				con.close();
			}

		}

	}
分享到:
评论

相关推荐

    MySQL55题答案.pdf

    2. **MySQL的技术特点**:MySQL是一个多线程的SQL服务器,支持多种客户端程序和库,具有广泛的API和管理工具。它是开源的,这意味着源代码公开,用户可以自由使用、修改和分发。此外,MySQL还具有高度的可移植性,...

    探索MySQL地理空间数据的奥秘:GIS功能全解析

    MySQL作为一个开源项目,其源代码是完全公开的,任何人都可以免费使用、修改和分发。同时,MySQL可以在多个操作系统平台上运行,包括Linux、Windows、macOS等,使得开发人员可以根据自己的需求选择合适的平台进行...

    mysql基础知识+概述+增删改查

    首先,MySQL是一个开源的SQL数据库,这意味着它的源代码是公开的,任何人都可以免费使用、修改和分发。它支持多种操作系统,如Windows、Linux和macOS,且广泛应用于Web应用程序中。MySQL由瑞典的MySQL AB公司创建,...

    Mysql的实用文档

    - **免费性与开源**:MySQL 不仅免费提供使用,而且其源代码也是公开的,这意味着开发者不仅可以免费使用它,还可以深入研究其内部工作机制,甚至可以根据自己的需求对其进行修改和定制。 - **获取方式**:可以通过...

    基于Springboot+Mybatis+Mysql的网盘文件管理系统

    在本项目中,基于Springboot+Mybatis+Mysql,开发者构建了一个完整的网盘系统,用户可以通过系统接口进行文件的上传、下载,同时系统可能还包含了文件的分类管理、版本控制、分享功能等,以满足不同用户的需求。...

    eNews新闻发布系统 v1.0(JSP+MYSQL)

    【eNews新闻发布系统 v1.0(JSP+MYSQL)】是一个基于Java服务器页面技术(JSP)和MySQL数据库构建的新闻管理系统。这个系统的核心功能是为网站提供新闻内容的发布、管理和展示,使得非技术人员也能方便地进行日常的...

    guestbook

    而`guestbook_v2.0`可能是一个更新版本的源代码包,包含了对原始留言本的一些改进或新功能,如增加回复功能、添加用户验证、改进界面设计或者优化查询性能。 整个系统的工作流程大致如下:用户在浏览器中打开`...

    Free-File-Storage:旧代码,实现了基于PHP的免费文件存储网站。 缺少MySQL脚本

    3. **数据库交互**:每上传一个文件,相关信息(如文件名、上传时间、用户ID、文件路径等)应该被存储在数据库中。由于提到缺少MySQL脚本,这部分可能需要开发者自行创建,包括数据库结构和相应的插入、查询操作。 ...

    DMOZ to MySQL using PHP-开源

    3. **设置MySQL数据库**:创建一个新的数据库以及对应的表结构,用于存放DMOZ的数据。表的设计应考虑DMOZ的数据结构,如类别、子类别、网址、描述等。 **脚本解析过程** `dmoz2mysql_v3`是该PHP脚本的核心部分,它...

    PHP新闻系统一个简单易懂的系统

    PHP新闻系统是一个基于PHP编程语言开发的简单易懂的信息发布平台,主要功能是允许游客浏览新闻,管理员进行后台管理,以及新闻编辑员撰写和发布新闻。这个系统为初学者提供了一个很好的实践环境,了解PHP的基础语法...

    数据库管理

    例如,添加一个新学生: ```sql INSERT INTO Students (name, student_id, score) VALUES ('张三', 2023001, 90.5); ``` - **Read**(读取):查询数据。可以按条件查询特定的学生: ```sql SELECT * FROM Students ...

    全国省市区街道社区数据库脚本

    5. 数据导入与管理:ajing.sql文件很可能是一个SQL脚本,用于在数据库中创建表结构并插入数据。开发者需要熟悉SQL语言,使用数据库管理工具(如MySQL Workbench、phpMyAdmin等)来执行该脚本,将数据导入到自己的...

    2022最新城市sql文件,省、市、区、街道

    首先,我们来看"code == pid"这个描述,这表明文件中的每个行政区域都有一个唯一的编码(code),并且这个编码代表了其上级行政区的ID(pid)。这种层级关系的表示方法常见于树形结构的数据组织中,使得我们可以快速...

    prevnext-1.0.1-pl.transport.zip_Links_modx_prevNext 1.0.1-pl

    "pl"通常代表“production level”,意味着这是一个可供公开使用的稳定版本。 在压缩包"prevnext-1.0.1-pl"中,可能包含以下组件: 1. **snippet**:MODX中的snippet是一种可重用的代码片段,可以嵌入到页面模板中...

    基于PHP的华优家教网站(开源版)php版源码.zip

    【标题】"基于PHP的华优家教网站(开源版)php版源码.zip" 提供的是一个基于PHP编程语言开发的开源家教网站源代码。这个项目旨在为教育机构或个人提供一个在线平台,方便家教老师与学生之间的联系和教学服务的管理。 ...

    php批量上传图片,对每张图片进行描述后,存储数据库

    需要创建一个表来存储图片的路径和描述,例如,表结构可能包含`id`(主键)、`image_path`(图片路径)、`description`(描述)等字段。 7. **预处理语句**:为了防止SQL注入,应该使用预处理语句来插入数据。例如...

    web安全之sql注入

    接下来,需要创建一个简单的用户表来存储登录信息。例如: ```sql CREATE TABLE users ( id INT(11) NOT NULL AUTO_INCREMENT, username VARCHAR(64) NOT NULL, password VARCHAR(64) NOT NULL, email VARCHAR...

    基于PHP的必帮百度搜索小偷程序php版源码.zip

    由于只有一个文件名 "132699126144009957",这可能是一个随机生成的文件ID或者是时间戳,用于区分不同的数据或版本。在压缩包中,这可能是源代码文件的名称,或者是记录程序运行日志或配置信息的文件。然而,没有...

    c#学生信息管理系统

    在本项目中,你将发现一个团队合作的成果,同时也融入了网络上公开的资源,这表明了开发者对知识共享与学习的态度。 首先,C#(读作"C Sharp")是微软公司推出的一种面向对象的编程语言,它被广泛用于Windows桌面...

    新闻发布系统

    JSP的工作原理是:当用户请求一个JSP页面时,服务器会将JSP转换成对应的Servlet(Java代码),然后执行这个Servlet来生成响应内容。 在开发【新闻发布系统】时,通常会涉及到以下几个关键知识点: 1. **数据库设计...

Global site tag (gtag.js) - Google Analytics