熱點推薦:
您现在的位置: 電腦知識網 >> 編程 >> SQL語言 >> 正文

數據庫轉化的問題

2013-11-13 12:39:53  來源: SQL語言 

  ACCESS的數據庫中的自動編號類型在轉化時sql server並沒有將它設為自動編號型我們需在SQL創建語句中加上identity表示自動編號!

  轉化時跟日期有關的字段SQL SERVER默認為smalldatetime型我們最好將它變為datetime型因為datetime型的范圍比smalldatetime型大我遇見這種情況用smalldatetime型時轉化失敗而用datetime型時轉化成功

  對此兩種數據庫進行操作的sql語句不全相同例如在對ACCESS數據庫進行刪除紀錄時用delete * from user where id=而對SQL SERVER數據庫進行刪除是用delete user where id=

  日期函數不相同在對ACCESS數據庫處理中可用date()time()等函數但對
SQL SERVER數據庫處理中只能用datediffdateadd等函數而不能用date()time()等函數

  在對ACCESS數據庫處理中sql語句中直接可以用一些VB的函數像cstr()函數而對SQL SERVER數據庫處理中卻不能用 

  一首先我說的是在ACCESSSQL之間轉換其他的我也還沒有嘗試過希望大家多多試驗肯定是有辦法的

  二轉換的方法

  打開控制面板管理工具中的數據庫源

  添加添加一個新的數據源在選擇欄裡選Driver do microsoft Access
(*mdb)完成後將出現一個框

  在數據庫源裡面輸入你想寫的名稱我取名叫ABC說明不需要填接著按下面的選擇尋找你的數據庫地址和選中(注意請先備份自己的ACCESS數據庫)然後確定
數據源在這裡建好了剩下轉換了

  打開SQL企業管理器進入數據庫新建一個空的數據庫ABC

  選擇新建立的數據庫按鼠標右鍵選擇所有任務導入數據下一步繼續

  在數據庫源下拉但中選擇Driver do microsoft Access(*mdb)用戶/系統DSN選種你剛才添加的ABC下一步

  目的不需要修改選擇服務器(一般下為自己的本機local也可以選擇服務器地址或者局域網地址確定你的權限是否可以操作)使用WINDOWS 身份驗證指用自己的系統管理員身份操作使用SQL身份操作驗證可以用於網站的操作推薦用後者;

  選上使用SQL身份操作驗證填寫你的用戶名和密碼我自己選擇的是系統默認號碼sa****數據庫選擇剛新建的ABC下一步;

  這一步的兩個單項選擇從數據源復制表和視圖用一條查詢指令指定要傳輸的數據選擇前者下一步繼續;

  這裡將出現你自己ACCESS數據庫的表全選下一步;

  DTS導入/導出向導立即運行被選中按下一步

  完成繼續;

  這個步驟你將看到你的數據被導入SQL裡面當出現已經成功把XXX個表導入到數據庫的字樣而且所有的表前面都有綠色的勾就表示成功導入所有數據如果中途出現問題或者表前面有紅色的叉的話說明該表沒有成功導入這時就要回去查看自己的操作是否正確了

  三數據修改

  由於SQL裡面沒有自動編號所以你的以自動編號設置的字段都會變成非空的字段這就必須手工修改這些字段並把他的標示選擇種子為增量為

  另外ACCESS轉換成SQL原來屬性為是/否的字段將被轉換成非空的bit這時候你必須修改成自己想要的屬性了;

  另外大家要注意對時間函數的把握ACCESS與SQL是有很多不同的


From:http://tw.wingwit.com/Article/program/SQL/201311/16343.html
    推薦文章
    Copyright © 2005-2013 電腦知識網 Computer Knowledge   All rights reserved.