適用於:
SQL Server
Azure SQL Database
Azure SQL 受控執行個體
Azure Synapse Analytics
Analytics Platform System (PDW)
下列轉換已由 ODBC 定義,或是 ODBC 的一致延伸模組。 每個提供者所提供的轉換是由提供者所服務的社群所決定,因此提供者之間通常會不一致。 方括弧中的值是選擇性的。
datetime 字串的格式為 'yyyy-mm-dd[ hh:mm:ss[.9999999][ 加/減 hh:mm]]'
時間字串的格式為 'hh:mm:ss[.9999999]'
日期字串的格式為 'yyyy-mm-dd'
字串的轉換在空白和欄位寬度上允許彈性。 如需詳細資訊,請參閱 ODBC 日期和時間改進
資料類型支援的<資料格式:字串和常值>一節
。
下面是一般轉換規則:
如果沒有任何時間存在,但是接收者可以儲存時間,則時間會設定為零。
如果沒有日期,但接收者可以儲存日期,則會使用目前的日期。
如果用戶端所使用的資料類型中沒有時區,但伺服器可以儲存時區,則日期會儲存在用戶端時區中。 請注意,這與伺服器行為不同。
如果伺服器類型中沒有時區,但用戶端類型具有時區,時間就會轉換成 UTC,再儲存在伺服器上。
如果時間存在,但接收者無法儲存時間,則會忽略時間元件。
如果日期存在,但接收者無法儲存日期,則會忽略日期元件。
如果從 C 轉換為 SQL 時發生秒數或小數秒的截斷,則會使用 SQLSTATE 22008 和訊息「Datetime 欄位溢位」產生診斷記錄。
如果從 SQL 轉換成 C 時發生秒數或小數秒的截斷,則會使用 SQLSTATE 01S07 和訊息「小數截斷」產生診斷記錄。
從 C 轉換為 SQL
列出當您從 C 類型轉換成 SQL Server 資料/時間類型時要考慮的問題。
從 SQL 轉換成 C
列出當您從 SQL Server 資料/時間類型轉換成 C 類型時要考慮的問題。
日期和時間改善 (ODBC)
即將登場:在 2024 年,我們將逐步淘汰 GitHub 問題作為內容的意見反應機制,並將它取代為新的意見反應系統。 如需詳細資訊,請參閱:
https://aka.ms/ContentUserFeedback
。
提交並檢視相關的意見反應