⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 635830.xml

📁 论坛精华帖子
💻 XML
📖 第 1 页 / 共 3 页
字号:
<?xml version='1.0' encoding='GB2312'?>
<?xml-stylesheet type='text/xsl' href='../csdn.xsl'?>
<Topic>
<Issue>
<PostUserNickName>网井</PostUserNickName>
<rank>一级(初级)</rank>
<ranknum>user1</ranknum>
<credit>110</credit>
<TopicId>635830</TopicId>
<TopicName>请问如何自编函数生成唯一ID?</TopicName>
<PostUserId>86631</PostUserId>
<PostUserName>netpit</PostUserName>
<RoomName>JSP</RoomName>
<ReplyNum>15</ReplyNum>
<PostDateTime>2002-4-10 11:58:51</PostDateTime>
<Point>100</Point>
<ReadNum>0</ReadNum>
<RoomId>28</RoomId>
<EndState>2</EndState>
<Content>使用数据库自增ID,在多套软件数据合并时会有问题
用数据库自带的唯一ID,和数据库又有关系

所以希望编一个函数用在插入记录时生成唯一的ID。
请用JAVA&#32;实现。

请高手指点。</Content>
</Issue>
<Replys>
<Reply>
<PostUserNickName>java一菜鸟</PostUserNickName>
<rank>二级(初级)</rank>
<ranknum>user2</ranknum>
<credit>100</credit>
<ReplyID>4189250</ReplyID>
<TopicID>635830</TopicID>
<PostUserId>212865</PostUserId>
<PostUserName>hotenM</PostUserName>
<Point>5</Point>
<Content>如果是oracle用自增加序列
如果不是,你专门建立一个表(一列),用一个字段来存储这个id,然后写一个存储过程来得到这个id并自加一</Content>
<PostDateTime>2002-4-10 12:28:02</PostDateTime>
</Reply>
<Reply>
<PostUserNickName></PostUserNickName>
<rank>一级(初级)</rank>
<ranknum>user1</ranknum>
<credit>100</credit>
<ReplyID>4190394</ReplyID>
<TopicID>635830</TopicID>
<PostUserId>181157</PostUserId>
<PostUserName>niexq</PostUserName>
<Point>5</Point>
<Content>用下面的模式生成序列号:

CREATE&#32;SEQUENCE&#32;"USER"."SEQ_TABLE_ID"&#32;INCREMENT&#32;BY&#32;1&#32;START&#32;WITH&#32;1&#32;MAXVALUE&#32;999999999&#32;MINVALUE&#32;1&#32;NOCYCLE&#32;CACHE&#32;20&#32;ORDER;

其中“USER”指用户名,SEQ_TABLE_ID是根据你自己的需要确定的序列号的名字。(上面的序列号是从1到999999999,不循环的,当然也可以建成循环的,前面再自己加上日期之类的区分就行了)</Content>
<PostDateTime>2002-4-10 13:17:21</PostDateTime>
</Reply>
<Reply>
<PostUserNickName>网井</PostUserNickName>
<rank>一级(初级)</rank>
<ranknum>user1</ranknum>
<credit>110</credit>
<ReplyID>4190912</ReplyID>
<TopicID>635830</TopicID>
<PostUserId>86631</PostUserId>
<PostUserName>netpit</PostUserName>
<Point>0</Point>
<Content>thanks

不过我不希望该ID与数据库类型有关
要适合常见的DB,such&#32;as&#32;oracle,mssql,sybase,db2,etc.

Who&#32;knows&#32;how&#32;to&#32;generate&#32;GUID&#32;with&#32;program?</Content>
<PostDateTime>2002-4-10 13:40:55</PostDateTime>
</Reply>
<Reply>
<PostUserNickName>笨瓜</PostUserNickName>
<rank>三级(初级)</rank>
<ranknum>user3</ranknum>
<credit>100</credit>
<ReplyID>4191204</ReplyID>
<TopicID>635830</TopicID>
<PostUserId>55544</PostUserId>
<PostUserName>supershot</PostUserName>
<Point>10</Point>
<Content>取得提交时刻的年月日时分秒,再加IP地址</Content>
<PostDateTime>2002-4-10 13:54:34</PostDateTime>
</Reply>
<Reply>
<PostUserNickName>网井</PostUserNickName>
<rank>一级(初级)</rank>
<ranknum>user1</ranknum>
<credit>110</credit>
<ReplyID>4192921</ReplyID>
<TopicID>635830</TopicID>
<PostUserId>86631</PostUserId>
<PostUserName>netpit</PostUserName>
<Point>0</Point>
<Content>希望得到更好的答案</Content>
<PostDateTime>2002-4-10 15:14:41</PostDateTime>
</Reply>
<Reply>
<PostUserNickName>凤凰一辉</PostUserNickName>
<rank>一级(初级)</rank>
<ranknum>user1</ranknum>
<credit>100</credit>
<ReplyID>4227104</ReplyID>
<TopicID>635830</TopicID>
<PostUserId>118364</PostUserId>
<PostUserName>restart2001</PostUserName>
<Point>10</Point>
<Content>可以再建个种子表,</Content>
<PostDateTime>2002-4-12 15:48:14</PostDateTime>
</Reply>
<Reply>
<PostUserNickName>网井</PostUserNickName>
<rank>一级(初级)</rank>
<ranknum>user1</ranknum>
<credit>110</credit>
<ReplyID>4227163</ReplyID>
<TopicID>635830</TopicID>
<PostUserId>86631</PostUserId>
<PostUserName>netpit</PostUserName>
<Point>0</Point>
<Content>我现在用年月日时分秒微秒再加一个两位的随机数一个三位的随机数
这样能保证唯一了吧。</Content>
<PostDateTime>2002-4-12 15:50:41</PostDateTime>
</Reply>
<Reply>
<PostUserNickName>jacky</PostUserNickName>
<rank>五级(中级)</rank>
<ranknum>user5</ranknum>
<credit>105</credit>
<ReplyID>4228126</ReplyID>
<TopicID>635830</TopicID>
<PostUserId>30398</PostUserId>
<PostUserName>kkhui</PostUserName>
<Point>0</Point>
<Content>create&#32;table&#32;sequence_table(name&#32;varchar(20),&#32;value&#32;number);
一条记录一个sequence,&#32;每select一次,立刻update一次value=value+1
</Content>
<PostDateTime>2002-4-12 16:27:10</PostDateTime>
</Reply>
<Reply>
<PostUserNickName>昊天</PostUserNickName>
<rank>三级(初级)</rank>
<ranknum>user3</ranknum>
<credit>100</credit>
<ReplyID>4228152</ReplyID>
<TopicID>635830</TopicID>
<PostUserId>58261</PostUserId>
<PostUserName>hardas</PostUserName>
<Point>10</Point>
<Content>记得记数器吗?
最本的办法读写一个文件啊。</Content>
<PostDateTime>2002-4-12 16:27:39</PostDateTime>
</Reply>
<Reply>
<PostUserNickName>网井</PostUserNickName>
<rank>一级(初级)</rank>
<ranknum>user1</ranknum>
<credit>110</credit>
<ReplyID>4228200</ReplyID>
<TopicID>635830</TopicID>
<PostUserId>86631</PostUserId>
<PostUserName>netpit</PostUserName>
<Point>0</Point>
<Content>请问谁知道怎么用JAVA生成GUID?

</Content>
<PostDateTime>2002-4-12 16:30:00</PostDateTime>
</Reply>
<Reply>
<PostUserNickName>jacky</PostUserNickName>
<rank>五级(中级)</rank>
<ranknum>user5</ranknum>
<credit>105</credit>
<ReplyID>4228237</ReplyID>
<TopicID>635830</TopicID>
<PostUserId>30398</PostUserId>
<PostUserName>kkhui</PostUserName>
<Point>50</Point>
<Content>GUID,说太长,分开回复


/*
&#32;*&#32;RandomGUID
&#32;*&#32;@version&#32;1.2&#32;01/29/02
&#32;*&#32;@author&#32;Marc&#32;A.&#32;Mnich
&#32;*
&#32;*&#32;From&#32;www.JavaExchange.com,&#32;Open&#32;Software&#32;licensing
&#32;*
&#32;*&#32;01/29/02&#32;--&#32;Bug&#32;fix:&#32;Improper&#32;seeding&#32;of&#32;nonsecure&#32;Random&#32;object
&#32;*&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;caused&#32;duplicate&#32;GUIDs&#32;to&#32;be&#32;produced.&#32;&#32;Random&#32;object
&#32;*&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;is&#32;now&#32;only&#32;created&#32;once&#32;per&#32;JVM.
&#32;*&#32;01/19/02&#32;--&#32;Modified&#32;random&#32;seeding&#32;and&#32;added&#32;new&#32;constructor
&#32;*&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;&#32;to&#32;allow&#32;secure&#32;random&#32;feature.

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -