sqlserver資料庫定義了varchar段

2021-03-03 22:29:37 字數 6439 閱讀 2673

1樓:匿名使用者

如果資料庫中存入100個字,並且頁面查詢出來並顯示也是100個字,那麼資料庫和儲存沒有問題,儲存顯示都沒有問題,而你使用sql查詢則顯示不全,可能是排序規則不同。

2樓:

請問用sql查不到是用什麼客戶端工具查的?

sql 中 varchar(50)代表什麼它能儲存幾個字母

3樓:匿名使用者

此處例子----sql server

對於字元型別的有:

char:固定長度,儲存ansi字元,不足的補英文半形空格。

nchar:固定長度,儲存unicode字元,不足的補英文半形空格varchar:可變長度,儲存ansi字元,根據資料長度自動變化。

nvarchar:可變長度,儲存unicode字元,根據資料長度自動變化。

也就是說:varchar 可變長度,

varchar(50)即長度為:50個字元當有存入值時,就跟據實際的值的大小(長度)存入資料。

4樓:匿名使用者

最多可儲存50個半形字母。

5樓:

包含 50個字元的可變長度 unicode 字元資料。位元組的儲存大小是所輸入字元個數

也就是說可以儲存包括字母、漢字、韓文本等各種文字,最多能存50個,位元組大小最多為100個。

資料庫中varchar(500)是什麼意思?

6樓:匿名使用者

500是指500個char,乙個char乙個位元組,乙個漢字兩個位元組,ascii的英文本母乙個乙個位元組。

var是可變的意

思,就是說如果存了250個位元組資料,就只佔250個位元組,而不是不論存多少資料都分配500位元組

7樓:匿名使用者

varchar(n) 長度為 n 個位元組的可變長度且非 unicode 的字元資料。n 必須是乙個介於 1 和 8,000 之間的數值。儲存大小為輸入資料的位元組的實際長度,而不是 n 個位元組。

8樓:

可變資料型別.最大500個字元.

急求修改db2資料庫字段屬性:一字段由varchar(50)到varchar(500) ?

9樓:匿名使用者

我使用db2 v9.7

connect to sample;

alter table administrator.test alter column b set data type varchar ( 500 ) ;

connect reset;

其中b原來是varchar(50),直接修改成功。

10樓:匿名使用者

db2沒有用過,但是也應該支援標準sql語句吧

alter table tablename modify yourcolumn varchar2(500);

這個是基本的sql,應該可以吧

11樓:玄囈

推薦的答案都不是正確的……而下面有兩個答案都是正確的……

12樓:

alter table tablename alter column_name set data type varchar(200);

這樣一定ok!

13樓:匿名使用者

如果是db2 的表名:

list tables

得到每乙個表的詳細資訊欄位名,字段屬性(型別,文字長度,備註)describe table 具體的表名

平時我就這麼獲得這些資訊

sqlserver資料庫varchar(40)能存放多少漢字?

14樓:仁昌居士

sqlserver資料bai庫duvarchar(40)能存放20個漢字。

sqlserver資料庫中,英文zhi字dao符需佔用乙個位元組存專儲,漢字和其他非英文本元,需屬佔用兩個位元組儲存。向乙個長度猛鬥為40個字元的varchar型字段中輸入漢字,最多可輸入20個漢字。當從這個欄位中取出資料時,資料其長度為20個漢字,40個字元。

擴充套件資料拿知高:

varchar(m)比char更加的消尺靈活,同樣用於表示字元資料,但是varchar可以儲存可變長度的字串。其中m代表該資料型別所允許儲存的字串的最大長度,只要長度小於該最大值的字串都可以被儲存在該資料型別中。

使用varchar型字段要比char型字段方便的多。使用varchar型字段時,不需要為剪掉資料中多餘的空格而操心。它可以比char型字段佔用更少的記憶體和硬碟空間。

當資料庫很大時,這種記憶體和磁碟空間的節省會變得非常重要。

15樓:

資料庫中,英文本元只需要乙個位元組儲存就足夠了,但漢字和其他眾多非英文本元,則專則歷需要兩個孫激搜位元組屬儲存,如果英鉛晌文與漢字同時存在,由於佔用空間數不同,容易造成混亂,導致讀取出來的字串是亂碼。

unicode字符集就是為了解決字符集這種不相容的問題而產生的,它所有的字元都用兩個位元組表示,即英文本元也是用兩個位元組表示。

而字首n就表示unicode字元,比如nchar,nvarchar,這兩種型別使用了unicode字符集。

基於以上兩點來看看字段容量

char,varchar 最多8000個英文,4000個漢字

nchar,nvarchar 可儲存4000個字元,無論英文還是漢字.

sql 中 資料型別為varchar 查詢的時候怎麼按照數字大小範圍查詢?

16樓:匿名使用者

直接用》 < 啊

比如select * from 表 where 字段 > 100

---補充

你什麼資料庫啊。varchar型別也可以用。

create table test(

col1 varchar(2)

)declare @i int

set @i = 1

while @i< 100

begin

insert into test values(convert(varchar(2),@i))

set @i = @i + 1

endselect * from test where col1 > 50 --正確

select * from test where convert(numeric(10),col1) > 50 --正確

select * from test where col1 > '50' --錯誤

drop table test

你自己測試吧

如果你非要把型別轉成數值型也可以但這是用不到索引了

17樓:匿名使用者

可以把varchar轉換成別的型別

比如 decimal,float之類

例:select * from 表 where convert(float,字段)>100

sqlserver 表中已有資料的情況下,新增乙個not null的字段

18樓:吐槽帝神回覆

1.alter table 表名 add 新列名 numeric(9) 自動為允許為空

2.update 表名 set 剛加的新列值='0'

3.alter table 表名 alter column 剛加的新列 numeric(9) not null 不含鏈允許為空

這我已經打的談橡孫很如顫清楚了,應該看的懂吧

19樓:匿名使用者

那你就譽前寫個語句就好了呀

alter table 表名 add 新欄位名卜扮 varchar(100) not null

字慶弊清段名及字段型別你根據自己需要更改一下

20樓:匿名使用者

sqlserver 表中已有資料的情況下歲並清,新增乙個not null的字段

那你就寫個蔽團語句就好了呀乎前 alter table 表名 add 新欄位名 varchar(100) not null欄位名及欄位型別你根據自己需要更改一下

sql server 2005 資料庫中定義字段 varchar(50)和varchar(20)兩者除了可存放的長度以外還有什麼其他不 20

21樓:應該很幸福

所謂滴水穿石。處理的資料量過大的時候,長度短的,掘運旅所佔空間相對判凳就會小很多。所以要盡量選擇適當長度的資料類悄敬型

22樓:匿名使用者

是呀,長度不同,佔用的空間就不同。設計時盡量避免資料冗餘的產生。

用乙個sql語句查詢出表中的乙個欄位的資料型別問題。

23樓:匿名使用者

一、語句通過systypes,syscolumns,sysobjects,三個系統**聯合檢索獲取結果。

systypes:資料庫支援的資料型別屬性。

syscolumns:資料庫中各**結構屬性。

sysobjects:資料庫中所有攜擾物件的屬性。

二、檢索語句演示

1、示例**:base_zwb

2、語句如下:

select name from systypes where

xtype in (select xtype  from syscolumns where name = 'zw_mc' and

id in (select id from sysobjects where name = 'base_zwb'));

語句解析:

1):select id from sysobjects where name = 'base_zwb'),從**『sysobjects 』中,獲御基取**'base_zwb'的物件id

2):select xtype  from syscolumns where name = 'zw_mc' and id in (select id from sysobjects where name = 'base_zwb'),以欄位名稱『zw_mc』和第1步中獲取的『id』,從**『syscolumns 』中獲取資料型別的編號'xtype'

3):以第2部獲取的鎮隱謹 'xtype'編號,從**『systypes 』中獲取資料型別。

結果如圖:

24樓:匿名使用者

createfunctionfn_getobjcolinfo(@objnamevarchar(50))returns@return_tabletable(tnamenvarchar(50),

typenamenvarchar(50),typelengthnvarchar(50),colstatbit)

asbegin

insert@return_table

selectb.nameas欄位名,c.nameas欄位型別,b.length/2as字段長度,b.colstatas是否自動增長

fromsysobjectsa

innerjoinsyscolumnsbona.id=b.idinnerjoinsystypesconc.xusertype=b.xtype

wherea.name=@objname

orderbyb.colid

return

end功能:返回某一內山絕表的所有字段、儲存容過程逗跡姿、函式州隱的引數資訊

25樓:匿名使用者

很簡單select name,(select name from systypes where xusertype=syscolumns.xusertype) from syscolumns where id=object_id('aa')如果是其它的表,把內'aa'慎舉換成寬殲碧

別的表名就行改鬥了容

26樓:呂建鷗

select

so.name 表備伍名,

sc.name 表列名,

--sc.colid 索引復,

st.name 型別制

from

sysobjects so, -- 物件表

syscolumns sc, -- 列名表

baisystypes st -- 資料類

型表where 1=1

and so.id = sc.id

and so.xtype = 'u' -- 型別u表仿啟或旁櫻示du表,zhiv表示檢視

and so.status >= 0 -- status >= 0 為非系統物件

and sc.xtype = st.xusertype

and so.name = 'aa' -- 某張特dao

定表執行下

sqlserver資料庫怎麼啟動

1.開始 管理管理工具 服務 2.啟動sql server mssqlserver 二 解決 本地計算機上的mssqlserver服務啟動後又停止了。一些服務自動停止,如果它們沒有什麼可做的 1.開啟sql server 2005中的配置工具sql server configure manager,...

sqlserver資料庫怎麼匯出

1 查詢 sql中的所有表 select table name from 資料庫名稱.information schema.tables where table type base table 執行之後,就可以看到資料庫中所有屬於自己建的表的名稱 2 查詢sql中所有表及列 select dbo.s...

vs怎麼連線sqlserver資料庫

option explicit 工程 引用 microsoft activex data object 2.0 library 後面為版本號 dim as new adodb.connection private sub mand1 click dim rs as new adodb.records...