C#生成Guid,SqlServer生成Guid


工作中需要用到全球唯一标识符,在.net当中 微软已经为我们添加了此方法,我们只需要直接调用即可。代码如下:

string guid = Guid.NewGuid().ToString();

但事情往往没有那么容易一帆风顺,当别人设计的数据库ID类型为varchar(32)时,使用Guid.NewGuid().ToString()自动生成ID值,本来大小32位妥妥的。可C#在生成的ID值中自动生成了几根小横杠,你说是不是讨嫌。这时往数据库添加数据时就报错了。前几天工作中刚刚遇到的问题。那怎么把自动生成的小横杠去掉呢?方法很简单:

string guid = Guid.NewGuid().ToString("N");

 

Sqlserver中需要生成Guid也很方便:

  select NEWID();

需要跟C#中生成的Guid配套的话,还需要加点工,因为在Sqlserver中生成的Guid字母为大写,而且也有小横杠:

select LOWER(REPLACE(NEWID(),'-',''))

使用 REPLACE()去掉小横杠并使用 LOWER()转换为小写,OK。


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM