首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 數據庫知識 >  >> SQL Server 資料庫 >> 關於SqlServer

跟我學 SQL(六):字串資料類型完整解析與應用指南

     編輯:關於SqlServer

資料類型在資料庫中的角色

資料類型決定欄位內容的處理、儲存與顯示方式。SQL-92 定義標準類型為廠商提供藍圖,四大類別:字串、數值、日期時間、間隔。各廠商在此基礎上擴充自有類型與限制,實作細節請參閱官方文件。

建立表格時指定資料類型

CREATE TABLE Products (
    prod_id INT(16) AUTO_INCREMENT,
    prod_color VARCHAR(20),
    prod_descr VARCHAR(255),
    prod_size DECIMAL(8,2),
    UNIQUE (`prod_id`)
);

prod_color VARCHAR(20) 表示建立名為 prod_color、類型為 VARCHAR、最大長度 20 的欄位。資料庫內部以描述符區分類型屬性(如可變長度、字元集等)。

字串資料類型詳細分類

1. CHARACTER / CHAR(固定長度字串)

  • 語法:CHARACTER(clength) 或 CHAR(clength)
  • 固定長度,不足處以空白(SPACE)填補。
  • 可與相同類型或 VARCHAR 比較,部分資料庫允許與數值類型比較。

2. CHARACTER VARYING / CHAR VARYING / VARCHAR(可變長度字串)

  • 語法:VARCHAR(maxlength)
  • 實際儲存長度等於資料長度,不填補空白。
  • 可與相同類型不同最大長度欄位比較。

3. BIT / BIT VARYING(位元字串)

  • 語法:BIT(blength)
  • 儲存 0/1 位元字串,如 BIT(2) 範例值 '01'。
  • 部分資料庫會前置補零或填充至固定長度。
  • 可與同類型或 BIT VARYING 比較,部分允許與 CHARACTER、INTEGER 比較。

國家字元集支援

SQL-92 提供 NATIONAL CHARACTER 與 NATIONAL CHARACTER VARYING,支援自訂字元集,處理方式同 CHAR/VARCHAR。

實務建議

  • 優先使用 VARCHAR 而非 CHAR,避免尾端空白干擾,並節省儲存空間。
  • 超過 255 字元的長文本,改用 TEXT 或廠商專屬大型物件類型(如 CLOB、NVARCHAR(MAX))。
  • 確認資料庫的字元集與定序設定,確保多語言資料正確排序比較。
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved