sqlserver2019中,sql server 2005中 char() nchar() varchar() nvarchar()有什麼區別?

時間 2021-06-07 01:20:41

1樓:智填寶誌願填報

char和nchar一般用於資料長度基本相同的欄位,如手機號都是11位,可以用char(11)。但如果長度不完全一樣,假設有8位的手機號,那會在資料後面自動補3個佔位符,此時如果有like '%phone%' 這樣的模糊查詢就有問題了

n一般用於中文儲存,char 10能存5個漢字或10個字元,nchar能存10個漢字或10個字元。

char的儲存效率比varchar稍微高點,就是要定長,根據不同專案需要吧

2樓:匿名使用者

帶n的,儲存字元個數

不帶n的,儲存位元組個數。

char,nchar是儲存定長位元組或字元,如定義了char(2)的話,

就是佔用了兩個位元組,即使登陸資料的時候登陸了一個1個位元組,db中也是佔用兩個位元組的空間。

varchar,nvarchar是儲存變長位元組或字元,即儲存的位元組或字元數就是實際向db中登陸的位元組或字元數。

3樓:貝博實厲漫

高等教育出版社《資料庫技術及應用》的81頁char

儲存固定長度的字串

最大長度

8000

個位元組varcahr

儲存可變長度的字串

最大長度8000

個位元組nchar

儲存固定長度的unicode字串

最大長度為

4000

個字元nvarchar

儲存可變長度的unicode字串

最大長度為

4000個字元

備註:有「var」字首的都是可變的意思,就是說你在輸入字元時可以輸入任意長度不同的字串

另外,你存名字:中文名就用nvarchar吧英文名就用varchar吧,

求sql server 2019中類似oracle中to c

select convert varchar 12 getdate 111 2004 09 12 select convert varchar 12 getdate 112 20040912 select convert varchar 12 getdate 102 2004.09.12 selec...

sqlserver2019中查表的前1000行用

大號是賊 一般表中都會有一個id列,預設排序是id的asc 升序 查詢前1000就是 top 1000 查詢後1000就是id降序的前1000,即desc,語句是 select top1000 from table by id desc 選擇從10到15的記錄 select top 5 from s...

在sql server2019中如何建立使用者

環柏 樓上說的是在2005中的建立辦法 下面為sql2000的建立辦法 exec sp addlogin loginame 登入名 passwd 密碼 exec dbo.sp grantdbaccess loginame n 使用者名稱 name in db n 登入名 create user us...