sql中数据类型的长度 请教sql语句如何取得一个表中的列名,数据类型,及长度?

sql\u4e2d\u5b9a\u4e49\u5e74\u9f84\u7528\u4ec0\u4e48\u6570\u636e\u7c7b\u578b\uff0c\u957f\u5ea6\u4e3a\u591a\u5c11\uff1f

sql\u4e2d\u5b9a\u4e49\u5e74\u9f84\u53ef\u4ee5\u7528\u7684\u7528\u6570\u636e\u7c7b\u578b\u53ca\u957f\u5ea6\uff1a
1\u3001char(3) \uff1a\u957f\u5ea6\u4e3a3\u7684\u5b57\u7b26\u4e32\u3002\u5c0f\u4e8e10\u4f4d\u4e14\u957f\u5ea6\u57fa\u672c\u56fa\u5b9a\u7684\u5b57\u7b26\u4e32\u7528char\u3002
2\u3001varchar(3)\uff1a\u957f\u5ea6\u4e3a3\u7684\u5b57\u7b26\u4e32\u3002\u957f\u5ea6\u5927\u4e8e10\u7684\u7528varchar\uff0cvarcha\u572810\u4ee5\u5185\u5360\u7528\u7a7a\u95f4\u6bd4char\u5927\u3002
3\u3001int\uff1a\u957f\u5ea6\u4e3a4\u4e2a\u5b57\u8282\uff0c\u5b58\u50a8\u4ece(-2147483648)\u5230(2147483647)\u3002
4\u3001Smallint\uff1a\u957f\u5ea6\u4e3a2\u4e2a\u5b57\u8282\uff0c\u5b58\u50a8\u4ece-32768\u523032767\u3002
5\u3001tinyint\uff1a\u957f\u5ea6\u4e3a1\u4e2a\u5b57\u8282\uff0c\u5b58\u50a80\u5230255\u7684\u6570\u5b57\u3002

\u6269\u5c55\u8d44\u6599
sql\u6570\u636e\u7c7b\u578b\u4f7f\u7528\u8303\u56f4
Text\uff1a\u7528\u4e8e\u6587\u672c\u6216\u6587\u672c\u4e0e\u6570\u5b57\u7684\u7ec4\u5408\u3002\u6700\u591a255\u4e2a\u5b57\u7b26\u3002
Memo\uff1a\u7528\u4e8e\u66f4\u5927\u6570\u91cf\u7684\u6587\u672c\u3002\u6700\u591a\u5b58\u50a865536\u4e2a\u5b57\u7b26\u3002
Byte\uff1a\u5141\u8bb80\u5230255\u7684\u6570\u5b57\u3002
Integer\uff1a\u5141\u8bb8\u4ecb\u4e8e-32768\u523032767\u4e4b\u95f4\u7684\u6570\u5b57\u3002
Long\uff1a\u5141\u8bb8\u4ecb\u4e8e -2147483648 \u4e0e 2147483647\u4e4b\u95f4\u7684\u5168\u90e8\u6570\u5b57\u3002
Single\uff1a\u5355\u7cbe\u5ea6\u6d6e\u70b9\u3002\u5904\u7406\u5927\u591a\u6570\u5c0f\u6570\u3002
Double\uff1a\u53cc\u7cbe\u5ea6\u6d6e\u70b9\u3002\u5904\u7406\u5927\u591a\u6570\u5c0f\u6570\u3002
Currency\uff1a\u7528\u4e8e\u8d27\u5e01\u3002\u652f\u630115\u4f4d\u7684\u5143\uff0c\u5916\u52a04\u4f4d\u5c0f\u6570\u3002
AutoNumber\uff1a\u5b57\u6bb5\u81ea\u52a8\u4e3a\u6bcf\u6761\u8bb0\u5f55\u5206\u914d\u6570\u5b57\uff0c\u901a\u5e38\u4ece1\u5f00\u59cb\u3002
Date/Time\uff1a\u7528\u4e8e\u65e5\u671f\u548c\u65f6\u95f4\u3002
Yes/No\uff1a\u903b\u8f91\u5b57\u6bb5\uff0c\u53ef\u4ee5\u663e\u793a\u4e3aYes/No\u3001True/False\u6216On/Off\u3002\u5728\u4ee3\u7801\u4e2d\uff0c\u4f7f\u7528\u5e38\u91cfTrue\u548c False\uff08\u7b49\u4ef7\u4e8e1\u548c 0\uff09\uff1bYes/No\u5b57\u6bb5\u4e2d\u4e0d\u5141\u8bb8Null\u503c\u3002
Ole Object\uff1a\u53ef\u4ee5\u5b58\u50a8\u56fe\u7247\u3001\u97f3\u9891\u3001\u89c6\u9891\u6216\u5176\u4ed6BLOBs (Binary Large OBjects)\u3002
Hyperlink\uff1a\u5305\u542b\u6307\u5411\u5176\u4ed6\u6587\u4ef6\u7684\u94fe\u63a5\uff0c\u5305\u62ec\u7f51\u9875\u3002

sql server \u7684 \u7cfb\u7edf\u5b58\u50a8\u8fc7\u7a0b sp_help\uff0c\u53ef\u4ee5\u76f4\u63a5\u83b7\u53d6
\u4f8b\uff1a sp_help a ,\u83b7\u53d6\u8868a\u7684\u7ed3\u6784\u53ca\u81ea\u589eID\u72b6\u6001\u7b49\u7b49\u3002

1.varchar,0在数据库中作为字符串中的一个字符是不能被隐藏的,而作为int则会被隐藏;
2.datetime,专门用于存放时间的数据类型;
3.字符串,字符只是一字符串中的一个个体,字符只能表示一个字母或汉字;
4.
首先,我们来看下nvarchar和varchar的官方帮助里的说明:
varchar(n)
长度为
n
个字节的可变长度且非
unicode
的字符数据。n
必须是一个介于
1

8,000
之间的数值。存储大小为输入数据的字节的实际长度,而不是
n
个字节。所输入的数据字符长度可以为零。varchar

sql-92
中的同义词为
char
varying

character
varying。
nvarchar(n)
包含
n
个字符的可变长度
unicode
字符数据。n
的值必须介于
1

4,000
之间。字节的存储大小是所输入字符个数的两倍。所输入的数据字符长度可以为零。nvarchar

sql-92
中的同义词为
national
char
varying

national
character
varying。
二、该如何选择两种字符呢?
varchar和nvarchar都能存储汉字。区别在于,一个汉字占varchar(2),只占nvarchar(1),而字母只占varchar(1),那么在数据库字段求长度的时候,用varchar你就不一定知道它确切的知道它到底有几个字,如果用nvarchar,那么汉字也是nvarchar(1),字母也是nvarchar(1),那么已经很明显了.
同时,varchar的检索快于nvarchar。
至于,具体该选择哪种,看你自己的想法和需求了
5.单引号表示单引号中的数据是实际数据,如:int
test=5;
select
'test'与select
test不同,前者会是字符串test,而后者则是5
6.'
'表示的是一个空格,表明name1与name2中间有一个空格,而三者组合成一个字符串并且所在的列命名为name

举例来说吧
char 不可变长度 char(20)就是20个字符,如果输入的字符数不足20他就会在后面补充若干空格 凑足20个字符

varchar是可变长度的
varchar(20) 就是最多20个字符,输入的数据在不足20的时候也不补空格

可见 不可变长度的数据 其长度固定,如果实际数据少,系统会自动填充使其沾满,可变长度数据只是定义了数据的最大长度,实际数据少也不会自动补足

你想单从名词上来区别要不得,因为这些都是翻译的,翻译的说法不同而已。
我们直接从类型上看
varchar是可限定的可变长度,如varchar(16),varchar(32).
最大是varchar(4000).因为普通sql数据页最大是8kb。

text类型,它本身只有16字符长度,但存的是指针,指向实际存储的位置。实际存储位置是不限制长度的。所以text对应超大型数据的存取,因为是指针指向,所以存取速度定然比varchar慢

需要提出的是varchar(max),也是不限制大小的,据说以后sql的版本里它会取代text等类型

  • sql鍚勭鏁版嵁绫诲瀷鐨鍚箟
    绛旓細鍦ㄤ竴涓暟鎹簱閲锛宼imestamp鍊兼槸鍞竴鐨刄niqueidentifier鐗规畩鏁版嵁鍨婾niqueidentifier鏁版嵁绫诲瀷鐢ㄦ潵瀛樺偍涓涓叏灞鍞竴鏍囪瘑绗︼紝鍗矴UID銆侴UID纭疄鏄叏灞鍞竴鐨勩傝繖涓暟鍑犱箮娌℃湁鏈轰細鍦ㄥ彟涓涓郴缁熶腑琚噸寤恒傚彲浠ヤ娇鐢∟EWID 鍑芥暟鎴栬浆鎹竴涓瓧绗︿覆涓哄敮涓鏍囪瘑绗︽潵鍒濆鍖栧叿鏈夊敮涓鏍囪瘑绗︾殑鍒梒har瀛楃鍨媍har鏁版嵁绫诲瀷鐢ㄦ潵瀛樺偍鎸囧畾闀...
  • sql鏁版嵁搴涓暱搴鍜岀簿搴︽寚鐨勬槸浠涔(sql闀垮害鍑芥暟)
    绛旓細鏁版嵁绫诲瀷鐨勯暱搴鏄瓨鍌ㄦ暟鎹墍鍗犵敤鐨勫瓧鑺傛暟锛屾寚鐨勬槸鐗╃悊瀛樺偍绌洪棿澶у皬銆傜簿搴︽槸鎸囨渶澶氬彲浠ュ瓨鍌ㄧ殑鍗佽繘鍒舵暟瀛楃殑鎬讳綅鏁帮紝鍖呮嫭灏忔暟鐐瑰乏杈瑰拰鍙宠竟鐨勪綅鏁般
  • sqlserver涓摢浜鏁版嵁绫诲瀷鍙瓨鍌ㄥぇ鏂囨湰
    绛旓細濡傛灉鎻掑叆鏁版嵁鏃舵彃鍏ョ殑鍊肩殑澶у皬鍦╯mallint鎴栬卼inyint鑼冨洿涔嬪唴锛 Sql Server 浼氳嚜鍔ㄥ皢绫诲瀷杞崲涓簊mallint 鎴栬卼inyint锛岃繖鏍蜂竴鏉ワ紝鍦ㄥ瓨鍌ㄦ暟鎹椂锛屽崰鐢ㄧ殑瀛樺偍绌洪棿鍙湁int鐨1/2鎴栧垯1/4銆係ql Server鏁版嵁搴撶鐞嗙郴缁涓殑鏁版嵁绫诲瀷鍙互鍒嗕负涓ょ被锛屽垎鍒槸锛氱郴缁熼粯璁ょ殑鏁版嵁绫诲瀷鍜岀敤鎴疯嚜瀹氫箟鐨勬暟鎹被鍨嬨
  • SQL Server 閲岀殑int鍨嬪彇鍊艰寖鍥存槸澶氬皯??
    绛旓細SQL Server 閲宨nt鍨嬬殑鏁板奸粯璁闀垮害涓4锛屽嵆4涓瓧鑺32浣嶏紝鏁版嵁鑼冨洿涓轰粠-2^31 (-2,147,483,648) 鍒 2^31 - 1(2,147,483,647) 鐨勬暣鍨嬫暟鎹紙鎵鏈夋暟瀛楋級銆俰nt 鐨 SQL-92 鍚屼箟瀛椾负 integer銆傚湪鏀寔鏁存暟鍊肩殑鍦版柟鏀寔 int 鏁版嵁绫诲瀷銆備絾鏄紝int鍦ㄦ煇浜涚壒娈婄殑鎯呭喌涓嶈兘浣跨敤锛屽綋鏁存暟鍊艰秴杩 int 鏁版嵁...
  • 璇烽棶鍏充簬SQL鍐鏁版嵁绫诲瀷
    绛旓細Varbinary[(n)] 鏄 n 浣嶅彉闀垮害鐨勪簩杩涘埗鏁版嵁銆傚叾涓紝n 鐨勫彇鍊艰寖鍥存槸浠 1 鍒 8000銆傚叾瀛樺偍绐ㄧ殑澶у皬鏄 n + 4涓瓧鑺傦紝涓嶆槸n 涓瓧鑺傘傚湪 Image 鏁版嵁绫诲瀷涓瓨鍌ㄧ殑鏁版嵁鏄互浣嶅瓧绗︿覆瀛樺偍鐨勶紝涓嶆槸鐢 SQL Server 瑙i噴鐨勶紝蹇呴』鐢卞簲鐢ㄧ▼搴忔潵瑙i噴銆備緥濡傦紝搴旂敤绋嬪簭鍙互浣跨敤BMP銆乀IEF銆丟IF 鍜 JPEG 鏍煎紡鎶...
  • sqll server涓〃鐨鏁版嵁绫诲瀷娌℃湁璁剧疆闀垮害,閭f槸榛樿闀垮害杩樻槸浠涔? 姣斿...
    绛旓細BIGINT 鏁版嵁绫诲瀷瀛樺偍浠-2^63 锛-9 锛223锛 372锛 036锛 854锛 775锛 807锛 鍒2^63-1锛 9锛 223锛 372锛 036 锛854 锛775锛 807锛 涔嬮棿鐨勬墍鏈夋璐熸暣鏁般傛瘡涓狟IGINT 绫诲瀷鐨鏁版嵁鍗犵敤8涓瓧鑺傜殑瀛樺偍绌洪棿銆備簩銆 娴偣鏁版嵁绫诲瀷 娴偣鏁版嵁绫诲瀷鐢ㄤ簬瀛樺偍鍗佽繘鍒跺皬鏁般傛诞鐐鏁板肩殑鏁版嵁鍦⊿QL Server 涓噰鐢...
  • SQL閲岀殑int绫诲瀷
    绛旓細1銆乮nt銆乥igint銆乻mallint 鍜 tinyint鏄娇鐢ㄦ暣鏁版暟鎹殑绮剧‘鏁板瓧鏁版嵁绫诲瀷銆2銆佷富瑕佺被鍨嬨佽寖鍥淬佸瓨鍌ㄤ綋濡備笅锛1锛塨igint锛氫粠 -2^63 (-9223372036854775808) 鍒 2^63-1 (9223372036854775807) 鐨勬暣鍨嬫暟鎹紝瀛樺偍 8 涓瓧鑺傘2锛塱nt锛氫粠 -2^31 (-2,147,483,648) 鍒 2^31 - 1 (2,147,483,647) ...
  • sql鏁版嵁搴涓殑Float鏁版嵁绫诲瀷鏄崰鍑犱綅,鍑犱釜瀛楄妭 ,涔熷氨鏄崰鍑犱釜0鍜1_鐧...
    绛旓細sql鏁版嵁搴撲腑鐨凢loat鏁版嵁绫诲瀷鏄崰鍑犱綅,鍑犱釜瀛楄妭 锛屼篃灏辨槸鍗犲嚑涓0鍜1 FLOAT鏁版嵁绫诲瀷鍙簿纭埌绗15浣嶅皬鏁帮紝鍏惰寖鍥翠负浠-1.79e-308鍒1.79e+308.姣忎釜float绫诲瀷鐨鏁版嵁鍗犵敤8涓瓧鑺傜殑瀛樺偍绌洪棿銆 float鏁版嵁绫诲瀷鍙啓涓篺loat([n])鐨勫舰寮忋俷鎸囧畾Float鏁版嵁鐨勭簿搴︺俷涓1鍒15涔嬮棿鐨勬暣鏁板笺傚綋n鍙1鍒7鏃讹紝...
  • SQL鐨鍩烘湰鏁版嵁绫诲瀷闂
    绛旓細text瀛樺偍鍙彉闀垮害鐨勯潪Unicode鏁版嵁锛屾渶澶ч暱搴︿负2^31-1(2,147,483,647)涓瓧绗︺4銆丯CHAR銆丯VARCHAR銆丯TEXT銆傝繖涓夌浠庡悕瀛椾笂鐪嬫瘮鍓嶉潰涓夌澶氫簡涓淣鈥濄傚畠琛ㄧず瀛樺偍鐨勬槸Unicode鏁版嵁绫诲瀷鐨瀛楃銆傛垜浠煡閬 瀛楃涓紝鑻辨枃瀛楃鍙渶瑕佷竴涓瓧鑺傚瓨鍌ㄥ氨瓒冲浜嗭紝浣嗘眽瀛椾紬澶氾紝闇瑕佷袱涓瓧鑺傚瓨鍌紝鑻辨枃涓庢眽瀛楀悓鏃跺瓨鍦ㄦ椂...
  • sql server鏈夊嚑绉鏁版嵁绫诲瀷
    绛旓細瀹冧笌char鏁版嵁绫诲瀷鏈澶х殑鍖哄埆鏄,瀛樺偍鐨勯暱搴涓嶆槸鍒楅暱,鑰屾槸鏁版嵁鐨勯暱搴 text 瀛楃鍨 text 鏁版嵁绫诲瀷鐢ㄦ潵瀛樺偍澶ч噺鐨勯潪缁熶竴缂栫爜鍨嬪瓧绗︽暟鎹傝繖绉嶆暟鎹被鍨嬫渶澶氬彲浠ユ湁231-1鎴20浜夸釜瀛楃 nchar 缁熶竴缂栫爜瀛楃鍨 nchar 鏁版嵁绫诲瀷鐢ㄦ潵瀛樺偍瀹氶暱缁熶竴缂栫爜瀛楃鍨嬫暟鎹傜粺涓缂栫爜鐢ㄥ弻瀛楄妭缁撴瀯鏉ュ瓨鍌ㄦ瘡涓瓧绗,鑰屼笉鏄敤鍗曞瓧鑺(鏅氭枃鏈涓鐨...
  • 扩展阅读:sql修改数据类型长度 ... sql语句判断字段长度 ... sql和python哪个难学 ... sql常见的数据类型 ... 零基础自学sql要多久 ... sql查询数据长度 ... sql修改字段类型和长度 ... sql中判断字段的长度 ... mysql查询字段长度大于10 ...

    本站交流只代表网友个人观点,与本站立场无关
    欢迎反馈与建议,请联系电邮
    2024© 车视网