SQL Server中如何生成GUID C#.NET中如何生成和使用GUID

摘要:
GUID是指在计算机上生成的数字。它确保它在同一时间和空间内对所有机器都是独一无二的。通常,平台将提供用于生成GUID的API。GUID的唯一缺点是生成的结果字符串相对较大。GUID主要用于在具有多个节点和计算机的网络或系统中分配唯一标识符。SQLSERVER中生成的GUIDSQLServer数据类型uniqueidentifier可以存储GUID值。

GUID(全局统一标识符)是指在一台机器上生成的数字,它保证对在同一时空中的所有机器都是唯一的。通常平台会提供生成GUID的API。生成算法很有意思,用到了以太网卡地址、纳秒级时间、芯片ID码和许多可能的数字。GUID的唯一缺陷在于生成的结果串会比较大。” 
1.一个GUID为一个128位的整数(16字节),在使用唯一标识符的情况下,你可以在所有计算机和网络之间使用这一整数。 
2.GUID 的格式为“xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx”,其中每个 x 是 0-9 或 a-f 范围内的一个十六进制的数字。例如:337c7f2b-7a34-4f50-9141-bab9e6478cc8 即为有效的 GUID 值。 
3.世界上(Koffer注:应该是地球上)的任何两台计算机都不会生成重复的 GUID 值。GUID 主要用于在拥有多个节点、多台计算机的网络或系统中,分配必须具有唯一性的标识符。 
4.在 Windows 平台上,GUID 应用非常广泛:注册表、类及接口标识、数据库、甚至自动生成的机器名、目录名等。 
SQL SERVER中产生GUID

SQL Server数据类型uniqueidentifier能够存储一个GUID数值。你可以通过使用NEWID()函数在SQL Server中生成这一数值

在.NET程序中产生GUID

通过Guid这个结构体来产生:Guid.NewGuid().ToString(),注意这里的方法是NewGuid(),和数据库中的函数名不一样啊,我就在这里犯过错,以为数据库中也用NewGuid()

C#
  1. using System;  
  2. namespace ConAppLogTest  
  3. {  
  4.     public class Program  
  5.     {  
  6.         static void Main(string[] args)  
  7.         {  
  8.             string guid=System.Guid.NewGuid().ToString();  
  9.             Console.WriteLine(guid);  
  10.         }  
  11.     }  
  12. }  

输出:

GUID: c4208862-c7fe-4d14-86d4-7bd5c55bd850
请按任意键继续. . .

把一个字符串转换为GUID

C#
  1. string id = "c4208862-c7fe-4d14-86d4-7bd5c55bd850";  
  2. Guid guid = System.Guid.Parse(id);  

免责声明:文章转载自《SQL Server中如何生成GUID C#.NET中如何生成和使用GUID》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇ubuntu下.NET Core手动更换版本(卸载再安装).Net Core应用框架Util介绍(五)下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

SqlServer.查询-行号

1、SSMS中 某数据库名-->右键-->新建查询 默认里面是没有行号的 设置:SSMS-->工具-->选项-->文本编辑器-->Transact SQL --> "√"选"行号" 2、 3、 4、 5、...

SQL SERVER数据库维护与重建索引

第一步:查看是否需要维护,查看扫描密度/Scan Density是否为100% declare @table_id int set @table_id=object_id('表名') dbcc showcontig(@table_id) 第二步:重构SQL Server数据库表索引 dbcc dbreindex('表名',pk_索引名,100) 重做...

SQL Server 查询优化器运行方式

一、结合实际,谈索引使用的误区 理论的目的是应用。虽然我们刚才列出了何时应使用聚集索引或非聚集索引,但在实践中以上规则却很容易被忽视或不能根据实际情况进行综合分析。下面我们将根据在实践中遇到的实际问题来谈一下索引使用的误区,以便于大家掌握索引建立的方法。 1、主键就是聚集索引 这种想法笔者认为是极端错误的,是对聚集索引的一种浪费。虽然SQL SERVER默...

SQL Server 检测到基于一致性的逻辑 I/O 错误 页撕裂

错误: SQL Server 检测到基于一致性的逻辑 I/O 错误 页撕裂(签名应该为: 0x55555555,但实际为: 0x89021555)。在文件 'D:datadatabases.MDF' 中、偏移量为 0x000000051e0000 的位置对数据库 ID 7 中的页 (1:10480) 执行 读取 期间,发生了该错误。SQL Server 错...

sqlserver与mysql中vachar(n)中遇到的坑

前两天在做将mysql的数据表导入到sqlserver当中。 本人比较愚笨,操作方法 是先将mysql的数据表到处为insert脚本,再在sqlserver中执行sql脚本 在网上看了一下那些方法 ,感觉很迷,如果有更好更简单的办法请大神指教。毕竟这种办法真的还是挺痛苦的。比如我有一张表的数据有10W条。哇塞,根本不能直接插入,需要分段来,而且还要去掉my...

sql 临时表的使用详解

Sqlserver数据库中的临时表详解  临时表在Sqlserver数据库中,是非常重要的,下面就详细介绍SQL数据库中临时表的特点及其使用,仅供参考。   临时表与永久表相似,但临时表存储在tempdb中,当不再使用时会自动删除。临时表有两种类型:本地和全局。它们在名称、可见性以及可用性上有区别。 对于临时表有如下几个特点: 本地临时表就是用户在创建...