sql表長度
Ⅰ sql server2014怎麼設計表中列中各類型的長度
有些類型的長度是固定的,比如datetime,int等,這些你是沒法改變的。
另外類型長度不是固定的,主要是看業務的需求。比如姓名,漢族一般三個,最多四個名字,但少數民族名字長度就不一定了,所以需要設置長一些,比如30。專業名應該是有專業表,此處只記錄ID,如果沒有專業表,長度也可以參考一下目前的專業,一般來說沒有超過10個字的吧。
卡號是9個數字,如果按自增長的來說,足夠大了。
Ⅱ Oracle的SQL可以有多長
1. IN 子句中的LIST個數最長為1000,超過該數目將報錯,這里可轉用一個臨時表來解決;
2.* CREATE TRIGGER語句文本的字元長度不能超過32KB(觸發器中不能使用LONG, LONG RAW 類型;觸發器內可以參照
LOB 類型列的列值,但不能通過 :NEW 修改LOB列中的數據;)順便說一下,觸發器中的PARENT關鍵字,只在嵌套表觸發器中有效,
3.* 11G以前,DBMS_SQL對輸入的SQL長度不能超過32K,原因是輸入參數只能是VARCHAR2類型,11G後,可以用CLOB作為輸入參數,則取消了這個限制
3.* 一個PL/SQL的包、過程、函數、觸發器的大小,在UNIX上最大是64K,而WINDOWS則是32K大小(32K這個應該不準,看下面的測試)
4.* SQL語句可以有多長?(網友說)Oracle文檔說是64K,實際受一些工具的限制會較這個值低,但網友測試發現可以很長,甚至超過
1M(我測試過 170K的都沒問題)。具體多長,10G也未說明,只是與很多環境有關:資料庫配置,磁碟空間,內存多少。。。
5. PL/SQL中,表達式/SQL本身的長度是可以達到比較長的長度(50K)左右,
如:v_str:=:new.f1||:ndw.f2。。。 ; select :new.f1||:new.f2。。。 into v_str from al; 另
外發現,如果這樣寫:v_str := 『a』||』b』||。。。則允許的表達式長度將大大的減少。如果表達式/SQL過長,超過了一個ORACLE包
/過程允許的最大程序長度,則在編譯時報 pls-123:program too large錯誤,這是pl/sql編譯器本身的限製造成的,即表達式
/SQL的長度在PL/SQL中受限於包/過程的最大大小
varchar2 sql最多4000個位元組,2000個漢字字元 pl/sql 最多32767個位元組
clob 最多4Gb
Ⅲ SQL資料庫怎樣修改資料庫表的長度
alter table 用戶
modify 賬號 varchar(100),密碼 varchar(100)
Ⅳ 關於SQL長度問題
int 這里說的不對 char 說的正確!
1 int 4
int2 是2位元組 有符號整型, 符號佔1位,餘下15位2進制位表示數值 。最大數正數是 0x7fff
int4 是4位元組 有符號整型 符號佔1位,餘下31位2進制位表示數值 。最大數正數是 0x7fffffff
int8 是8位元組 有符號整型 符號佔1位,餘下63位2進制位表示數值 。
2 char 20
代表能容下20的字元
10個漢字!
Ⅳ sql中如何查詢表的信息,欄位名,長度,類型等等
SELECT
表名=casewhena.colorder=1thend.nameelse''end,
表說明=casewhena.colorder=1thenisnull(f.value,'')else''end,
欄位序號=a.colorder,
欄位名=a.name,
標識=casewhenCOLUMNPROPERTY(a.id,a.name,'IsIdentity')=1then'√'else''end,
主鍵=casewhenexists(='PK'andparent_obj=a.idandnamein(
(=a.idANDcolid=a.colid)))then'√'else''end,
類型=b.name,
佔用位元組數=a.length,
長度=COLUMNPROPERTY(a.id,a.name,'PRECISION'),
小數位數=isnull(COLUMNPROPERTY(a.id,a.name,'Scale'),0),
允許空=casewhena.isnullable=1then'√'else''end,
默認值=isnull(e.text,''),
欄位說明=isnull(g.[value],'')
FROM
syscolumnsa
leftjoin
systypesb
on
a.xusertype=b.xusertype
innerjoin
sysobjectsd
on
a.id=d.idandd.xtype='U'andd.name<>'dtproperties'
leftjoin
syscommentse
on
a.cdefault=e.id
leftjoin
sys.extended_propertiesg
on
a.id=G.major_idanda.colid=g.minor_id
leftjoin
sys.extended_propertiesf
on
d.id=f.major_idandf.minor_id=0
where
d.name='Tbasyfy1'--如果只查詢指定表,加上此條件
orderby
a.id,a.colorder
Ⅵ 怎麼修改sql表中列的數據長度
是變長字元型么?
修改長度有個要求,就是這個欄位上不能有約束。主鍵或者外鍵,都不行。
SQLSERVER修改語法:
alter
table
表名
alter
column
欄位名
varchar(新長度)
ORACLE
alter
table
表名
modify
欄位名
varchar2(新長度)
Ⅶ sql怎麼修改表欄位的大小
alter table <表名> alter column <欄位名> 新類型名(長度)
示例:假如有名T1,欄位名F1,原來F1為varchar(3),現在要改為varchar(10),則可以這么寫:
alter table T1 alter column F1 varchar(10)
一般地,改欄位名可以用這條語句:
alter table A rename column a to c
但是,實際應用中,我們往往是用J-SQL進行編譯,而J-SQL不支持修改欄位名,所以,如果一定要修改欄位名,那麼只有通過變通的方法了,具體思路為:
1.新建一個欄位,取名為c;
2.將欄位a的內容拷貝到c;
3.刪除欄位a;
sql修改欄位長度的語法:
alter table 表名 modify 欄位名 欄位類型;
sql修改欄位長度的示例代碼
alter table qtline modify qtl_bidernote VARCHAR2(4000);
標准SQL,對任何資料庫都適用
alter table fzrtmis.reporttemplate modify REPNAME varchar(100);
修改欄位名名稱
ALTER TABLE TABLENAME RENAME COLUMN COL1 TO COL2;
添加欄位
alter table fzrtmis.itiembuildqk add STATIONSTATE CHAR(1)
Ⅷ sqll server中表的數據類型沒有設置長度,那是默認長度還是什麼 比如float
一、 整數數據類型
整數數據類型是最常用的數據類型之一。
1、INT (INTEGER)
INT (或INTEGER)數據類型存儲從-2的31次方 (-2 ,147 ,483 ,648) 到2的31次方-1 (2 ,147 ,483,647) 之間的所有正負整數。每個INT 類型的數據按4 個位元組存儲,其中1 位表示整數值的正負號,其它31 位表示整數值的長度和大小。
2、SMALLINT
SMALLINT 數據類型存儲從-2的15次方( -32, 768) 到2的15次方-1( 32 ,767 )之間的所有正負整數。每個SMALLINT 類型的數據佔用2 個位元組的存儲空間,其中1 位表示整數值的正負號,其它15 位表示整數值的長度和大小。
3、TINYINT
TINYINT數據類型存儲從0 到255 之間的所有正整數。每個TINYINT類型的數據佔用1 個位元組的存儲空間。
4、BIGINT
BIGINT 數據類型存儲從-2^63 (-9 ,223, 372, 036, 854, 775, 807) 到2^63-1( 9, 223, 372, 036 ,854 ,775, 807) 之間的所有正負整數。每個BIGINT 類型的數據佔用8個位元組的存儲空間。
二、 浮點數據類型
浮點數據類型用於存儲十進制小數。浮點數值的數據在SQL Server 中採用上舍入(Round up 或稱為只入不舍)方式進行存儲。所謂上舍入是指,當(且僅當)要舍入的數是一個非零數時,對其保留數字部分的最低有效位上的數值加1 ,並進行必要的進位。若一個數是上舍入數,其絕對值不會減少。如:對3.14159265358979 分別進行2 位和12位舍入,結果為3.15 和3.141592653590。
1、REAL 數據類型
REAL數據類型可精確到第7 位小數,其范圍為從-3.40E -38 到3.40E +38。 每個REAL類型的數據佔用4 個位元組的存儲空間。
2、FLOAT
FLOAT數據類型可精確到第15 位小數,其范圍為從-1.79E -308 到1.79E +308。 每個FLOAT 類型的數據佔用8 個位元組的存儲空間。 FLOAT數據類型可寫為FLOAT[ n ]的形式。n 指定FLOAT 數據的精度。n 為1到15 之間的整數值。當n 取1 到7 時,實際上是定義了一個REAL 類型的數據,系統用4 個位元組存儲它;當n 取8 到15 時,系統認為其是FLOAT 類型,用8 個位元組存儲它。
3、DECIMAL
DECIMAL數據類型可以提供小數所需要的實際存儲空間,但也有一定的限制,您可以用2 到17 個位元組來存儲從-10的38次方-1 到10的38次方-1 之間的數值。可將其寫為DECIMAL[ p [s] ]的形式,p 和s 確定了精確的比例和數位。其中p 表示可供存儲的值的總位數(不包括小數點),預設值為18; s 表示小數點後的位數,預設值為0。 例如:decimal (15 5),表示共有15 位數,其中整數10 位,小數5。 位表4-3 列出了各精確度所需的位元組數之間的關系。
4、NUMERIC
NUMERIC數據類型與DECIMAL數據類型完全相同。
注意:SQL Server 為了和前端的開發工具配合,其所支持的數據精度默認最大為28位。
Ⅸ 在sql中建表時如何查看欄位的長度
你使用的什麼類型的資料庫,Oracle和Mysql可以輸入:desctableName命令,其他資料庫可以使用圖形界面工具查看追問:是SQLSERVER2008怎麼查
Ⅹ SQL裡面的長度是什麼意思
首先,你應該知道欄位長度,就是新建一個欄位時的長度例如varchar(100),那麼它可以存50個漢字或100個英文字母,或其組合。
再有,數據的長度隻字元的個數,就是len(「數據」)的值。此時一個漢字和一個英文都記一個長度
text(16)的存儲量遠大於varchar(100)