一个sql问题

funcreal 2004-10-13 09:15:52
我有两个数据库表,一个是发布文章表file,一个是文章附件表attachment.他们都有id字段,且都是自增一的。attachment中有一个fileId字段,表示是谁的附件。
当我发布一篇文章的时候,同时向数据库插入该文章的附件。步骤:
做完文章的插入操作后,取出刚插入的文章的id,利用这个id值,进行附件的插入操作。那么,我怎样才能保证我取出的id值,是最新的,就是说如何避免在插文章,和它的附件之间不会有人又插入了一篇文章?
听说事物可以解决,但如何在java中用呢?
...全文
43 点赞 收藏 2
写回复
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
禽兽v5 2004-10-13
只要你用的数据库支持自增量,一定支持这种取值的操作。
回复
禽兽v5 2004-10-13
假设在oracle中,建立两个自增量

file_id_seq

attachment_id_seq

取值的时候,绝对是唯一的!不要用java来生成下一个id值,用数据库自己的自增量就可以了。
select file_id_seq.nextval from dual

select attachment_id_seq.nextval from dual
回复
发动态
发帖子
Web 开发
创建于2007-09-28

7.9w+

社区成员

Java Web 开发
申请成为版主
社区公告
暂无公告