共用方式為


資料類型使用方式

適用於:SQL ServerAzure SQL DatabaseAzure SQL 受控執行個體Azure Synapse AnalyticsAnalytics Platform System (PDW)

SQL Server Native Client ODBC 驅動程式和SQL Server會強制使用下列資料類型。

資料類型 限制
日期常值 日期常值儲存在SQL_TYPE_TIMESTAMP資料行 (SQL Server datetimeSmalldatetime) 資料類型時,時間值為 12:00:00:00.000 A.M。
moneysmallmoney 只有 moneysmallmoney 資料類型的整數部分很重要。 如果在資料類型轉換期間截斷 SQL money資料的十進位部分,SQL Server Native Client ODBC 驅動程式會傳回警告,而不是錯誤。
SQL_BINARY (可為 Null) 當連接到 SQL Server 6.0 版和更早版本的實例時,如果SQL_BINARY資料行可為 Null,則儲存在資料來源中的資料不會以零填補。 從這類資料行擷取資料時,SQL SERVER NATIVE CLIENT ODBC 驅動程式會將右邊的零填補。 不過,在SQL Server所執行的作業中建立的資料,例如串連,沒有這類填補。

此外,當資料放在 SQL Server 6.0 或更早版本中的這類資料行時,如果資料太長而無法放入資料行,SQL Server就會截斷右邊的資料。

注意:SQL Server Native Client ODBC 驅動程式支援連線到 SQL Server 6.5 和更早版本。
SQL_CHAR (截斷) 當連接到 SQL Server 6.0 和更早版本的實例,且資料會放入SQL_CHAR資料行中時,如果資料太長而無法放入資料行,SQL Server會在右側截斷它,而不會發出警告。

注意:SQL Server Native Client ODBC 驅動程式支援連線到 SQL Server 6.5 和更早版本。
SQL_CHAR (可為 Null) 當連接到 SQL Server 6.0 和更早版本的實例時,如果SQL_CHAR資料行可為 Null,則儲存在資料來源中的資料不會以空白填補。 從這類資料行擷取資料時,SQL Server Native Client ODBC 驅動程式會在右側以空白填補它。 不過,在SQL Server所執行的作業中建立的資料,例如串連,沒有這類填補。

注意:SQL Server Native Client ODBC 驅動程式支援連線到 SQL Server 6.5 和更早版本。
SQL_LONGVARBINARY、SQL_LONGVARCHAR、SQL_WLONGVARCHAR 當連接到 SQL Server 6 實例時, ( (具有SQL_LONGVARBINARY、SQL_LONGVARCHAR或SQL_WLONGVARCHAR資料類型的資料行更新) 會完全支援影響多個資料列的資料行。x和更新版本。 連接到 SQL Server 4.2x的實例時,S1000 錯誤「部分插入/更新」 文字或影像資料行的插入/更新未成功」。

注意:SQL Server Native Client ODBC 驅動程式支援連線到 SQL Server 6.5 和更早版本。
字串函數參數 字串 函式string_exp參數必須是資料類型SQL_CHAR或SQL_VARCHAR。 字串函數中不支援 SQL_LONG_VARCHAR 資料類型。 count參數必須小於或等於 8,000,因為SQL_CHAR和SQL_VARCHAR資料類型的長度上限為 8,000 個字元。
時間常值 時間常值,儲存在datetimeSmalldatetime) 資料類型 (SQL Server SQL_TIMESTAMP資料行時,日期值為 1900 年 1 月 1 日。
timestamp 只有 Null 值可以手動插入 時間戳記 資料行。 不過,因為時間戳記資料行會由SQL Server自動更新,所以會覆寫 Null 值。
tinyint SQL Server Tinyint資料類型為 unsigned。 Tinyint資料行預設會系結至資料類型的變數SQL_C_UTINYINT。
別名資料類型 連接到 SQL Server 4.2x的實例時,ODBC 驅動程式會將 Null 新增至未明確宣告資料行可為 Null 性的資料行定義。 因此會忽略儲存在別名資料類型定義中的 Null 屬性。

當連接到 SQL Server 4.2x的實例時,具有別名資料類型的資料行具有charbinary的基底資料類型,而且不會宣告任何可為 Null 性的資料行會建立為資料類型VarcharVarbinarySQLColAttributeSQLColumnsSQLDescribeCol 會傳回SQL_VARCHAR或SQL_VARBINARY作為這些資料行的資料類型。 從這些資料行所擷取的資料不會進行填補。

注意:SQL Server Native Client ODBC 驅動程式支援連線到 SQL Server 6.5 和更早版本。
LONG 資料類型 SQL_LONGVARBINARY和SQL_LONGVARCHAR資料類型都會限制資料執行參數。
大型值類型 SQL Server Native Client ODBC 驅動程式會) 分別在接受或傳回 ODBC SQL 資料類型的 API 中公開Varchar (max) Varbinary (max (max) Nvarchar (max) SQL_WVARCHAR (SQL_VARBINARY SQL_VARCHAR 類型。
使用者定義型別 (UDT) UDT 資料行會對應為 SQL_SS_UDT。 如果 UDT 資料行使用 UDT 的 ToString() 或 ToXMLString() 方法或是透過 CAST/CONVERT 函數而明確地對應到 SQL 陳述式中的其他類型,則結果集內的資料行類型會反映出此資料行轉換成的實際類型。

SQL Server Native Client ODBC 驅動程式只能系結至 UDT 資料行做為二進位檔。 SQL Server僅支援SQL_SS_UDT與SQL_C_BINARY資料類型之間的轉換。
XML SQL Server會自動將 XML 轉換成 Unicode 文字。 XML 類型會對應為 SQL_SS_XML。

另請參閱

處理結果 (ODBC)