当前位置:首页 > 经验 >

电脑唯一guid码怎么查(电脑guid怎么查看)

来源:原点资讯(www.yd166.com)时间:2023-12-06 07:31:25作者:YD166手机阅读>>

概述

在oracle8i以后提供了一个生成不重复的数据的一个函数sys_guid()一共32位,生成的依据主要是时间和机器码,具有世界唯一性,类似于java中的UUID(都是世界唯一的)。

电脑唯一guid码怎么查,电脑guid怎么查看(1)


SYS_GUID

SYS_GUID同Oracle管理员所使用的传统的序列(sequence)相比具有诸多优势。一个序列生成器只是简单地创建从给定的起点开始的一系列整数值,而且它被用在选择陈述式的时候自动地递增该系列。

序列生成器所生成的数字只能保证在单个实例里是唯一的,这就不适合将它用作并行或者远程环境里的主关键字,因为各自环境里的序列可能会生成相同的数字,从而导致冲突的发生。SYS_GUID会保证它创建的标识符在每个数据库 里都是唯一的。

此外,序列必须是DML陈述式的一部分,因此它需要一个到数据库的往返过程(否则它就不能保证其值是唯一的)。SYS_GUID源自不需要对数据库进行访问的时间戳和机器标识符,这就节省了查询的消耗。


使用

SYS_GUID() 生成32位的唯一编码。来生成唯一主键

例如:

create table test ( id raw(16) default sys_guid() primary key, name varchar2(100) ); insert into test values(sys_guid(),'t1');

这样就能生成唯一的主键id了,插入数据时不用插入id列。

电脑唯一guid码怎么查,电脑guid怎么查看(2)


SYS_GUID作为一个主关键字?

create table use_seq_table(id integer ); create sequence use_seq_sequence; insert into use_seq_table values (use_seq_sequence_value.nextval ); create table use_guid_table(id raw (16)); insert into use_guid_table(sys_guid());

很多应用程序都依靠序列生成器来创建数据行的主关键字,这些数据行没有一个明显的主值,这也就是说,在这样的数据集里一条记录的创建就会让数据列发生改变。因此,管理员可能会对在表格中将SYS_GUID用作主关键字而不使用序列数感兴趣。这在对象在不同机器的不同数据库里生成以及需要在后来合并到一起的情况下很有用。

但是,SYS_GUID所生成的值是一个16位的原始值。序列所生成的整数不会使用16位(的值),除非它达到了10的30次方(每个字节有两位),而且数字是相当独特的:

SQL> select dump (123456789012345678901234567890) from dual ;

电脑唯一guid码怎么查,电脑guid怎么查看(3)

较短的值就意味着用于表格和索引的存储空间更少,以及查询访问的时间更短。

使用SYS_GUID或者序列会在数据库使用周期里的某些地方造成性能上的消耗,对于SYS_GUID而言,性能上的影响在查询时间和 创建时间上(在表格里要创建更多的块和索引以容纳数据)。对序列而言,性能上的影响在查询期间,在这个时候,SGA序列的缓冲区被用光。在缺省情况下,一 个序列一次会缓冲20个值。如果数据库没有使用这些值就关闭了,它们就会被丢失。

SYS_GUID生成的值的另一个显著的不足之处是,管理这些值会变得困难得多。你必须(手动)输入它们或者通过脚本来填充它们,或者将它们作为Web参数来传递。

出于这些原因,将SYS_GUID作为一个主关键字不是一个很好主意,除非是在一个并行的环境里或者希望避免使用管理序列生成器的情况下。


总结

相比于JAVA的uuid,SYS_GUID优点就是生成的字符串是唯一的,但其和UUID有同样的弊端:生成的序列过长并且没有规律不方便记忆。SYS_GUID的应用场景是在于:当数据库某字段设置为唯一,则可用次生成(比如主键)

后面会分享更多devops和DBA方面的内容,感兴趣的朋友可以关注下~

电脑唯一guid码怎么查,电脑guid怎么查看(4)

栏目热文

怎么确认电脑安装多少位的系统(怎么判断电脑应该装多少位系统)

怎么确认电脑安装多少位的系统(怎么判断电脑应该装多少位系统)

我们在日常使用电脑过程中,总是发现有些软件和驱动程序只能安装在 32 位版本的 Windows 系统上,有些则只能在 6...

2023-12-06 07:24:49查看全文 >>

怎么看电脑是8g还是16g(怎么知道自己电脑是8g还是16g)

怎么看电脑是8g还是16g(怎么知道自己电脑是8g还是16g)

熟悉计算机的朋友都知道,电脑系统可以分为32位和64位系统。它们之间有什么区别?它们支持不同的内存:32位操作系统最多支...

2023-12-06 07:42:51查看全文 >>

怎样查自己电脑是多少位的(怎么查询电脑是多少位的)

怎样查自己电脑是多少位的(怎么查询电脑是多少位的)

熟悉计算机操作系统的朋友应该知道,电脑系统分为32位和64位。不同系统位数的兼容软件也会有所不同。怎么看电脑是32位还是...

2023-12-06 07:45:27查看全文 >>

西瓜切开后到底该怎么存放(西瓜切开存放的正确方法)

西瓜切开后到底该怎么存放(西瓜切开存放的正确方法)

中国农业大学食品科学与营养工程学院副教授 范志红炎炎夏日,西瓜是家家必备的消暑美食。但一整个西瓜吃不完,切开后如何保存更...

2023-12-06 07:48:30查看全文 >>

西瓜切开后怎么保存不会坏(西瓜没切开可以保存多长时间)

西瓜切开后怎么保存不会坏(西瓜没切开可以保存多长时间)

炎热的夏天,虽然酷暑让人难耐,但夏季却是丰收的时节,各种水果蔬菜都在夏季大量上市了,对于吃货来说,夏季就是一个美妙的季节...

2023-12-06 07:50:52查看全文 >>

电脑32位怎么升到62位(电脑如何从32位改成62位)

电脑32位怎么升到62位(电脑如何从32位改成62位)

心将Windows 10从32位升级至64位时会丢失资料?放轻松,本篇教学将告诉您如何升级Windows10/8/7从3...

2023-12-06 07:46:54查看全文 >>

怎么查询养老保险已交了几年(怎样查询养老保险交几年了)

怎么查询养老保险已交了几年(怎样查询养老保险交几年了)

工作多年的你是否清楚自己的养老保险缴费情况?向您推荐“上海人社”APP轻松掌握城镇职工养老保险缴费信息一、打开“上海人社...

2023-12-06 08:02:40查看全文 >>

怎样查养老保险交了几年(怎样查个人养老保险交了几年了)

怎样查养老保险交了几年(怎样查个人养老保险交了几年了)

从哪里能查询到养老保险缴了多长时间?其实你的养老保险缴了多长时间你本人心里应该是有数的,从哪年哪月开始缴纳,中间是否断缴...

2023-12-06 07:39:53查看全文 >>

养老保险怎么查询交几年了(养老保险交了几年怎么查询)

养老保险怎么查询交几年了(养老保险交了几年怎么查询)

近日网友“mhy123”问政:我忘了我是哪年交的养老保险了,能帮我查一下吗,电话回复我吧,谢谢!市人社局回复如下:市民您...

2023-12-06 07:26:11查看全文 >>

怎么查询个人养老保险交几年(如何查询自己养老保险交了几年了)

怎么查询个人养老保险交几年(如何查询自己养老保险交了几年了)

前不久,在我们厂里就发生了这样奇怪的事。在聊天中我无意问她们交了多少年社保,个人账户余额有多少时,他们竟然一个都不知道,...

2023-12-06 07:30:28查看全文 >>

文档排行