新疆软件开发

本站首页 软件开发 成功案例 公司新闻 公司简介 客服中心 软件技术 网站建设
  您现在的位置: 新疆二域软件开发公司 >> 数据库开发 >> 文章正文

模拟自增编号,提高移植性能

在我的ORM中,一个最大的问题就是怎么去模拟自增主键,因为ORM中的主键是程序控制的。

1.select max(col) from table

这种方法肯定不行,一出现并发就完蛋了。如果在程序里面做循环直到插入成功,那么逻辑就会非常的烦。。

 

2.添加一张专门保存主键的表,每次先更新再读取。使用事务控制并发

GO

BEGIN TRANSACTION
SELECT @MaxID = MAX_ID FROM CASSABA WHERE CATEGORY = @CATEGORY

UPDATE CASSABA SET MAX_ID = @MaxID + 1 WHERE CATEGORY = @CATEGORY

COMMIT TRANSACTION

相信第二种方法是可行的。

 

作者:美丽人生… | 文章来源:博客园 | 更新时间:2007-10-28 15:37:09

  • 上一篇文章:

  • 下一篇文章:

  • 相关文章:
    Domino平台的优缺点分析
    使用经验整理-TestDirector8.0数据库备份和还原
    丢失日志文件后数据库还能不能恢复了
    c#如何连接各类数据库
    基础学习:基于SQL的sysColumns 数据库字段表
    处理一个数据库实例在登陆时报ORA-27140错误
    利用CodeSmith生成sql
    如何解决MySQL数据库中文问题
    如何获取Oracle当前数据库SCN值
    安全技术:数据库系统安全之漏洞解决方法
    软件技术
    · 开发语言
    · Java技术
    · .Net技术
    · 数据库开发
    最新文章  
    ·Domino平台的优缺点分析
    ·oracle不能连接本地库的解
    ·使用经验整理-TestDirecto
    ·学习sqlserver数据库的维度
    ·sqlserver 多用户并发中如
    ·丢失日志文件后数据库还能
    ·人工智能在数据库sql语句编
    ·数据库学习:Oracle应用程
    ·基础知识:软件测试的要点
    ·技术文章:sqlserver 2008
    ·SQL Server虚拟内存和物理
    ·在MySQL中 describe命令怎
    ·怎样解决视图刷新时出现的
    ·如果忘记了MySQL的root用户
    ·基础学习:基于SQL的sysob
    关于我们 | 软件开发 | 下载试用 | 客服中心 | 联系我们 | 友情链接 | 网站地图 | 新疆电子地图 | RSS订阅
    版权所有 © 2016 新疆二域软件开发网 www.k8w.net All Rights Reserved 新ICP备14003571号
    新疆软件开发总机:0991-4842803、4811639.
    客服QQ:596589785 ;地址:新疆乌鲁木齐北京中路华联大厦A-5C 邮编:830000