程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> MYSQL數據庫 >> 關於MYSQL數據庫 >> 數據變換和轉換注意事項(SQL)

數據變換和轉換注意事項(SQL)

編輯:關於MYSQL數據庫
使用數據轉換服務 (DTS) 轉變或轉換異類數據和目的服務器之間的數據之前,請考慮不同程序、提供程序以及驅動程序支
持數據類型和 SQL 語句的方式的變化。

當使用 Microsoft® SQL Server™ 作為數據源時,請考慮下列事項:

將 real 數據類型轉換為 int 數據類型也許不能返回精確的值,因為 SQL Server 2000 只支持精確度為 6 位數字的
real 數據類型。例如,real 型數字 2147480000 可能生成 2147480065 的 int 值。


從一個文本文件將 string (DBTYPE_WSTR) 列轉換為 date (DBTYPE_DATE) 或 time (DBTYPE_TIME) 列時,OLE DB 數據轉
換服務組件只接受一種日期或時間格式 (yyyy-mm-dd hh:mm:ss.fffffffff)。使用日期時間字符串轉換,或者使用 CDate
函數編碼 Microsoft ActiveX® 腳本轉換正確地轉換日期。


SQL Server 2000 不支持 OLE DB 類型 DBTYPE_DATE 或 DBTYPE_TIME。SQL Server 2000 只支持 DBTYPE_DATETIME。


若要通過多步驟訪問數據,請避免在轉換過程中使用 temp 表。應使用全局 temp 表或在 tempdb 中創建永久表。


從 temp 表返回行的存儲過程不能用作轉換源。可以使用存儲過程從全局 temp 表或表返回行。


在轉換數據任務、數據驅動的查詢任務或 DTS 設計器中的執行 SQL 任務中使用臨時表時,請記住:不能使用 Transact-
SQL 語句或調用 temp 表的存儲過程作為源。
該限制並不應用於 DTS 設計器的外部。可使用通過編程方式訪問 SQL Server temp 表的源語句或存儲過程。

DTS 導入/導出向導和 DTS 設計器
當使用 DTS 導入導出向導和 DTS 設計器創建包時,請考慮以下事項:

DTS 用戶界面允許共享任務中現有的連接,但是同一個連接不能既用在一個轉換的源中又用在該轉換的目的中。


使用 DTS 設計器或 DTS 導入/導出向導,有可能為一些只作為數據源的提供程序指定只讀或正在使用狀態(例如,
Microsoft Access 和 ODBC DSN )。單擊"連接屬性"對話框中的"高級"選項卡,然後在"高級連接屬性"對話框中,將模式
屬性值設置為 1。


使用 DTS 導入/導出向導或 DTS 設計器創建表時,在目的地上創建的表的所有者為當前用戶(通常是 dbo),與誰是源表
的所有者無關。這將產生這種情況:dbo 試圖在目的地創建一個表,而該表的名稱已經存在,從而導致嘗試失敗。


當使用 DTS 設計器定義數據驅動的查詢時,數據目的地必須能夠支持 OLE DB ICommand 接口。由於這種限制,類似文本
文件的目的不被支持。


如果 text、ntext 和 image 類型的字段長度超過 8388602 字節,則 DTS 的復制 SQL Server 對象任務將截斷超出的部
分。DTS 設計器或 DTS 導入/導出向導不顯示任何錯誤信息,而是顯示任務已成功完成。
唯一的失敗指示是一條寫入日志文件的日志消息,此文件的名稱為 ..log,位於"復制 SQL Server 對
象任務屬性"對話框的"復制"選項卡所指定的腳本文件目錄中。此日志消息詳細說明表和列,但不指出發生截斷的行。無任
何錯誤記錄寫入 DTS 錯誤文件或 SQL Server 日志。

Microsoft SNA Server
當使用 Microsoft SNA Server 作為數據源時,

 

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved