什么是一个GUID的字符串的长度?是一个、字符串、长度、GUID

2023-09-02 02:05:56 作者:住你心里

我想创建SQL VARCHAR列应包含 N'guid,而的GUID 是一个产生通过.NET(GUID Guid.NewGuid) - 一流的System.Guid

I want to create a varchar column in SQL that should contain N'guid' while guid is a generated GUID by .NET (Guid.NewGuid) - class System.Guid.

什么是的 VARCHAR 的长度,我应该期望从一个GUID? 它是一个静态的长度?

What is the length of the varchar I should expect from a GUID? Is it a static length?

我应该使用 nvarchar的(将GUID用不完的Uni code字)?

Should I use nvarchar (will GUID ever use Unicode characters)?

varchar(Guid.Length)

PS。我不希望使用一个SQL行GUID数据类型。我只是问什么是 Guid.MaxLength

推荐答案

这要看你如何格式化的GUID:

It depends on how you format the Guid:

Guid.NewGuid()的ToString() => 36 字符(复姓) 输出: 12345678-1234-1234-1234-123456789abc

Guid.NewGuid().ToString() => 36 characters (Hyphenated) outputs: 12345678-1234-1234-1234-123456789abc

Guid.NewGuid()。的ToString(D) => 36 字符(复姓,同的ToString()) 输出: 12345678-1234-1234-1234-123456789abc

Guid.NewGuid().ToString("D") => 36 characters (Hyphenated, same as ToString()) outputs: 12345678-1234-1234-1234-123456789abc

Guid.NewGuid()。的ToString(N) => 32 字符(数字只) 输出: 12345678123412341234123456789abc

Guid.NewGuid().ToString("N") => 32 characters (Digits only) outputs: 12345678123412341234123456789abc

Guid.NewGuid()。的ToString(B) => 38 字符(括号) 输出: {12345678-1234-1234-1234-123456789abc}

Guid.NewGuid().ToString("B") => 38 characters (Braces) outputs: {12345678-1234-1234-1234-123456789abc}

Guid.NewGuid()。的ToString(P) => 38 字符(括号) 输出:(12345678-1234-1234-1234-123456789abc)

Guid.NewGuid().ToString("P") => 38 characters (Parentheses) outputs: (12345678-1234-1234-1234-123456789abc)

Guid.NewGuid()。的ToString(X) => 68 字符(十六进制) 输出: {0x12345678,0x1234,0x1234,{0x12,0x34,0x12,0x34,0x56,0x78,0x9a,0xbc}}

Guid.NewGuid().ToString("X") => 68 characters (Hexadecimal) outputs: {0x12345678,0x1234,0x1234,{0x12,0x34,0x12,0x34,0x56,0x78,0x9a,0xbc}}