mysql insert一條記錄后怎樣返回創(chuàng)建記錄的主鍵id,last
10年積累的網(wǎng)站制作、成都網(wǎng)站制作經(jīng)驗,可以快速應(yīng)對客戶對網(wǎng)站的新想法和需求。提供各種問題對應(yīng)的解決方案。讓選擇我們的客戶得到更好、更有力的網(wǎng)絡(luò)服務(wù)。我雖然不認(rèn)識你,你也不認(rèn)識我。但先建設(shè)網(wǎng)站后付款的網(wǎng)站建設(shè)流程,更有蘆淞免費網(wǎng)站建設(shè)讓你可以放心的選擇與我們合作。
使用 mysqli 的方法是:
$mysqli-insert_id 是返回剛剛插入的那條記錄的 id
SELECT LAST_INSERT_ID() 是返回最后插入的記錄id
如果插入數(shù)據(jù)的id是自增長的話會比較容易拿到新數(shù)據(jù)的id
mysql有提供函數(shù)LAST_INSERT_ID() 來獲取最后一次插入數(shù)據(jù)的id,當(dāng)發(fā)生插入新數(shù)據(jù)事件后該函數(shù)返回值才會發(fā)生變化,在下一次插入數(shù)據(jù)前無論select幾次,返回的都會是同一個值
Statement暴露以下方法可以訪問到主鍵:ResultSet getGeneratedKeys() throws SQLException;
為了簡化該方法的使用,輕松獲得RDBMS生成的主鍵,Spring內(nèi)置了KeyHolder接口及GeneratedKeyHolder實現(xiàn)者。
下面的類的內(nèi)置方法中都使用到了KeyHolder,可以使用他來訪問主鍵。
JdbcTemplate: int update(PreparedStatementCreator psc,KeyHolder generatedKeyHolder) throws DateAccessException;
NamedParameterJdbcTemplate的兩個update方法
SimpleJdbcInsert輔助類。
SqlUpdate輔助類。
等。
DataFieldMaxValueIncrementer繼承鏈。
能夠返回全局唯一、遞增的取值,這種特性是企業(yè)應(yīng)用的常見需求,考慮到RDBMS的不同情況,Spring提供了DataFieldMaxValueIncrementer接口,這些方法返回唯一的、遞增的、不同類型的取值。
各個數(shù)據(jù)庫底層都以此類為接口,來實現(xiàn)具體的業(yè)務(wù)邏輯。
比如:Oracle:OracleSequenceMaxValueIncrementer實現(xiàn)類采用Oracle數(shù)據(jù)庫支持的序列發(fā)生器。
HsqlMaxValueIncrementer采用HSQLDB的表實現(xiàn),從而模擬了序列發(fā)生器的行為等。
類似的還有:
MysqlMaxValueIncrementer
DerbyMaxValueIncrementer
SybaseMaxValueIncrementer
SqlServerMaxValueIncrementer
PostgreSqlSequenceMaxValueIncrementer
DB2SequenceMaxValueIncrementer
H2SequenceMaxValueIncrementer等等
Spring JDBC對行集的支持:
RowSet,用于它能夠以JavaBean方式同RDBMS數(shù)據(jù)進行交互,因此比ResultSet更為靈活。
JdbcTemplate內(nèi)置queryForRowSet()方法集合。
NamedParameterJdbcTemplate內(nèi)置的queryForRowSet()方法集合。
都可以很方便的獲取到RowSet對象,方便數(shù)據(jù)庫的操作。
可以使用LAST_INSERT_ID()函數(shù) 請參考下列實驗: insert into a values(null,'010'); -- 插入一條記錄 select * from a; -- 查詢最新情況 SELECT LAST_INSERT_ID(); -- 顯示最后插入的自增ID 從圖結(jié)果2,可以看到最后插入的自動id為 9
插入一條記錄的時候,可以用pstmt.getGeneratedKeys(),返回相應(yīng)的Id,批量插入時可以寫一個存儲過程,獲取最后的一個Id,就可以了。
分享題目:mysql怎么返回id mysql怎么返回上一行修改
分享URL:http://jinyejixie.com/article44/dodhdee.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供品牌網(wǎng)站制作、App開發(fā)、電子商務(wù)、手機網(wǎng)站建設(shè)、虛擬主機、商城網(wǎng)站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)