数据库中GUID的生成
GUID, 即Globally Unique Identifier(全球唯一标识符) 也称作 UUID(Universally Unique IDentifier) 。 GUID是一个通过特定算法产生的二进制长度为128位的数字标识符,用于指示产品的唯一性。GUID 主要用于在拥有多个节点、多台计算机的网络或系统中,分配必须具有唯一性的标识符。
在 Windows 平台上,GUID 广泛应用于微软的产品中,用于标识如如注册表项、类及接口标识、数据库、系统目录等对象。
在数据库的设计中有时将字段设置成GUID类型,并作为主键,GUID 的生成可以在数据库中也可以在程序中生成,以下总结了GUID在数据库及程序中的不同的生成的方法
一、在数据库中生成 GUID
1. SQL Server
在 SQL Server 中使用 NEWID(),来生成一个GUID,语法如下:
SELECT NEWID()
2. MySQL
在 MySQL 中使用UUID 来生成一个 GUID,语法如下:
SELECT UUID();
3. Oracle
在 Oracle中使用UUID 来生成一个 GUID,语法如下:
SELECT SYS_GUID() FROM DUAL;
二、 在程序中生成 GUID
1. DOT.NET C#
在 C# 中使用 NewGuid(); 来生成,具体如下:
System.Guid.NewGuid().ToString("N"); 32位字符
xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
System.Guid.NewGuid().ToString("D"); 连字符分隔的32位字符串
xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
System.Guid.NewGuid().ToString("B"); 在大括号中、由连字符分隔的32位字符串
{xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx}
System.Guid.NewGuid().ToString("P"); 在圆括号中、由连字符分隔的32位字符串
(xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx)
2. Java
在Java 语言中就不再使用 NewGuid()来生成了,而是使用 UUID ,其语法如下:
java.util.UUID.randomUUID();
数据库中GUID的生成的更多相关文章
- 关于项目中根据当前数据库中最大ID生成下一个ID问题——(五)
1.关于部门管理时候根据上级产生下级部门ID的问题(传入一个参数是上级部门id)
- ASP页面-自动取回数据库中的值生成导航。
以下为自己总结的一点经验,简单的介绍一下方法,如发现有误,请帮忙指正,谢谢. 一,首先定义调用据库. <% dim objconn,objconnstr set objconn=server.c ...
- pycharm 直接删掉数据表之后,makemigration和migrate 之后,数据库中依然没有生成数据表的问题
综合分析一下行程这个问题的原因: 在终端中运行 select * from django_migrations; 查看 提交的记录,如果你的表删掉了,记录还在,那么数据库会觉得,这个表依然是存在的,所 ...
- C#中GUID的生成格式(Guid.ToString方法 )
GUID 是微软对UUID这个标准的实现.UUID是由开放软件基金会(OSF)定义的.UUID还有其它各种实现,不止GUID一种 public string ToString( string ...
- django models.py增加后MySQL数据库中并没有生成相应的表
根据教程到添加并保存quest的时候报错了 1.models.py里面的命名没有错 2.查看mysite->settiongs下的INSTALLED_APPS设置正确 3.使用python ma ...
- django 数据库中的表生成model
https://blog.csdn.net/weixin_34405354/article/details/93582647 还没有证实是否有效
- 数据库中存储日期的字段类型究竟应该用varchar还是datetime ?
背景: 前段时间在百度经验看到一篇文章<如何在电脑右下角显示你(爱人)的名字>,之前也听过这个小技巧,但没真正动手设置过.所以出于好奇就实践了一下. 设置完成后的效果例如以下.右下角的时间 ...
- 使用有序GUID:提升其在各数据库中作为主键时的性能
原文出处:https://www.codeproject.com/articles/388157/guids-as-fast-primary-keys-under-multiple-database ...
- GUID在安全中作用及生成方法
参考改进于http://blog.csdn.net/jcicheng/article/details/743934 全球唯一标识符 (GUID) 是一个字母数字标识符,用于指示产品的唯一性安装.在许多 ...
随机推荐
- poj2352消防站
题目大意:有n个点的一棵树,每个点有两个值:w和c.现在要在其中若干点建立消防站,使得每个点到最近的消防站的距离不超过该点的c值,i点建立消防站的费用为w.求最小费用. 分析:本题显然是树型Dp.定义 ...
- ACL权限设置使用
acl操作 # 查看操作的分区支不支持acldumpe2fs -h /dev/sda2 | grep aclDefault mount options: user xattr acl 代表支持acl如 ...
- 限制页面内部链接访问源-HTML注释
不知道大家有没有碰到过这样一个问题:我修改的是别人的网页,他的超连接是指向一个服务器的某个HTML文件,我把超连接地址修改成了我本地机器的跟首页 同一目录下的一个HTML文件,却发现超连接根本 ...
- Chrome安装FlashPlayer Debug
首先: 在谷歌浏览器上打开chrome://plugins 找到 Adobe Flash Player 然后将谷歌自带的版本停用,如果已经安装了for Netscape版,则会显示另外一个版本.(建议 ...
- DBA_Oracle冷备份和热备份的处理(概念)
2014-07-27 Created By BaoXinjian
- window下安装oracle数据库
Oracle 11g安装 1.解压下载的包,然后进入包内,点击setup.exe开始安装 . 2.出现如下:一般把那个小对勾取消,点击下一步进行, 弹出下图这个后点‘是’ 3.下图后,选择创建和配置数 ...
- ylbtech-Unitity-CS:AnonymousDelegates
ylbtech-Unitity-CS:AnonymousDelegates 1.A,效果图返回顶部 1.B,源代码返回顶部 1.B.1, using System; using System.Co ...
- 如何搭建Struts2环境
1.解压下载到的struts-2.3.16压缩包. 2.将struts2-blank\WEB-INF\lib 下的jar包复制到Eclipse项目下的libs文件夹下. 3.struts-2.3.16 ...
- java的枚举
package com.wzh.test.enum0; import org.junit.Test; public class demo1 { @Test public void testAb(){ ...
- Python标准库03 路径与文件 (os.path包, glob包)
作者:Vamei 出处:http://www.cnblogs.com/vamei 欢迎转载,也请保留这段声明.谢谢! 路径与文件的简介请参看Linux文件系统 os.path包 os.path包主要是 ...