Mysql 如何 得到新插入的字段ID
N年前的代码应该还能用
/** * @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(); } } }
相关推荐
在MySQL中,经常需要用到自动增长的ID字段作为表的主键,特别是在频繁进行数据插入操作时。本文将深入探讨以下几个方面: 1. **理解自动增长ID的工作原理** 2. **在删除记录后重新插入时ID的变化情况** 3. **不同...
如果希望在特定位置插入字段,需要使用`AFTER <现有字段名>`来指定位置,例如: ```sql ALTER TABLE student ADD age INT AFTER name; ``` 这样,`age`字段就会被添加到`name`字段之后。 在数据库设计中,适时地...
例如,在创建用户信息表 Userinfo 时,我们可以将 User_ID 字段设置为 auto_increment,以便在插入数据时自动增长: ```sql CREATE TABLE UserInfo ( User_ID int NOT NULL PRIMARY KEY AUTO_INCREMENT, Name ...
MySQL 字段加密 MySQL 字段加密是将数据库字段类型设置为 varbinary 类型,并将加密盐设置为全局变量,以实现对敏感数据的保护。本文将详细介绍 MySQL 字段加密的实现步骤和相关知识点。 数据库字段类型 在 MySQL...
在MySQL数据库中,自增字段(AUTO_INCREMENT)是一种常见的特性,用于在插入新记录时自动为该字段生成唯一的序列编号。这个字段通常用于主键,确保每个记录的唯一性。以下是对MySQL自增字段相关知识点的详细说明: ...
UPDATE `表名` SET `字段名`=ceiling(rand()*500000+500000) WHERE (条件); update `表名` set click=click*0.01 where classid='2' and click>2000 我们经常会遇到使用随机的问题,下面就是一种解决随机数的方法...
综上所述,本实例展示了如何在MySQL数据库中创建Blob字段、插入和查询Blob数据。源码中可能包含了类似的实现,通过解压提供的"向数据库插入blob数据实例源码"压缩包,你可以查看并运行完整的Java代码示例。
这个特性在执行插入操作后获取新插入记录的ID时非常有用。例如,在上面的代码中,使用了`@@IDENTITY`来获取刚刚插入的记录ID: ```csharp BackBZID = Convert.ToInt32(TPMySqlHelper.GetSingle("INSERT INTO TP_BZ_...
如果是 NOT NULL 字段,MySQL 对于数值类型插入 0,字符串类型插入空字符串,时间戳类型插入当前日期和时间,ENUM 类型插入枚举组的第一条。 AUTO_INCREMENT 修饰符 AUTO_INCREMENT 修饰符只适用于 INT 字段,表明...
本文将深入探讨如何利用MyBatis框架结合MySQL数据库实现批量插入功能,包括其原理、配置、代码实现以及优化策略。 ### 一、MyBatis框架简介 MyBatis是一个优秀的持久层框架,它支持定制化SQL、存储过程以及高级...
在MySQL中,某些字段通常设置为自增长,比如订单ID,这种字段在新记录插入后会自动递增,无需手动赋值。在上述场景下,我们经常需要在插入数据后获取这个自增长的ID值,以便进一步处理,如将订单ID关联到其他表。...
MySQL和Oracle都是广泛使用的数据库管理系统,它们都支持Blob类型的字段来存储这类数据。本篇文章将深入探讨如何在MySQL和Oracle数据库中插入Blob数据,并提供相关的源码实例。 一、MySQL中的Blob数据插入 MySQL...
MySQL的`LAST_INSERT_ID()`函数可以获取自增字段生成的最后一个编号,这对于跟踪插入操作非常有用。但是,这个函数只与当前会话相关,如果在会话中没有生成新的自增值,它将返回0。 对于其他类型的数据表,如MyISAM...
本文将深入探讨如何使用Visual Studio 2010中的MFC(Microsoft Foundation Classes)框架与MySQL数据库进行交互,特别是在数据库中插入数据。MFC是微软为Windows应用程序开发提供的一种C++类库,而MySQL则是一种流行...
MySQL 雪花算法生成唯一整型ID主键的实现主要针对大数据环境下,需要大量生成全局唯一ID的需求。雪花算法是一种分布式ID生成策略,由Twitter开源,其设计目标是在分布式系统中生成具有全局唯一性、有序性和高并发性...
然后,通过类似的方法,读取本地文件并将其内容插入到MySQL的BLOB字段中。在Java中,你可以使用`PreparedStatement`的`setBinaryStream()`方法: ```java FileInputStream in = new FileInputStream(...
在插入新记录前,该触发器会自动为每一行的新记录的`id`字段赋值为序列的下一个值。这种方式更加灵活且无需在每个插入语句中显式指定序列值。 #### 获取刚插入的ID 在Oracle中,如果需要获取刚插入的数据的ID值,...
[mysql]replace的用法(替换某字段部分内容) [mysql]replace的用法 1.replace into replace into table (id,name) values(‘1′,’aa’),(‘2′,’bb’) 此语句的作用是向表table中插入两条记录。如果主键id为...
mysql通过触发器实现两个表的同步,需要了解的朋友可以看一下。 有两张表A和B,要求往A里面插入一条记录的同时要向B里面也插入一条记录,向B里面插入一条记录的同时也向A插入一条记录。两张表的结构不同,需要将...