Access升遷到Sql server有些數(shù)據(jù)表遷遷總是失敗的解決辦法(表被跳過或?qū)С鍪。?/h1>
- 2017-07-28 10:40:00
- zstmtony
原創(chuàng)
-
8054
Access升遷到Sql server有些數(shù)據(jù)表遷遷總是失敗(表被跳過或?qū)С鍪。?/span>
來源:Access交流網(wǎng)
作者:tmtony
access自身有一個(gè)非常好的升遷工具,叫做Access升遷向?qū)?Upsizing Wizard),可以利用升遷向?qū)О颜麄€(gè)Access數(shù)據(jù)庫中的表升遷到SQL Server中,
但首先要注意:
1. Access 2003或 access2007不能直接升遷到sqlserver2008 , 在Access2003 及 Access2007 這2個(gè)版本環(huán)境下,無法用升遷向?qū)ccess表到SQL Server 2008的。
因?yàn)闀?huì)提示以下錯(cuò)誤: 升遷向?qū)?只適用于Microsoft Sql Server(6.50 SP5 或更高版本)。請(qǐng)登錄到 Sql server 數(shù)據(jù)源。
2.如果是Access 2003或Access 2007 可以考慮遷移到sql server 2000 或 Sql server 2005 ,然后再用Sql server將數(shù)據(jù)庫備份,再還原到Sql server 2008 或 Sql server 2012 或 Sql server 2016
3.可考慮使用 微軟的SSMA 遷移工具
SSMA( SQL Server Migration Assistant) For Access(Access 升遷向?qū)娲ぞ撸?/a>
最近在幫客戶將一個(gè)Access2007的accdb數(shù)據(jù)升遷到Sql server是,發(fā)現(xiàn)有一個(gè)表死活升遷不了,使用的是Access內(nèi)置的Sql server升遷工具
開始 以為是Access2007的問題,后來改為Access 2003的mdb再升遷Sql server也是失敗
總是提示: 表:XX表名 表被跳過或?qū)С鍪?/strong>
解決過程:
1. 查看數(shù)據(jù)表的字段,發(fā)現(xiàn)有些表的默認(rèn)值或掩碼 或格式的設(shè)置,擔(dān)心這些會(huì)不會(huì)與Sql server不兼容。刪除了以下的相關(guān)設(shè)置:
工作代碼ID 小數(shù)位數(shù)0
標(biāo)準(zhǔn)工時(shí) 小數(shù)位數(shù) 2
原料不良 小數(shù)位數(shù) 0
工作時(shí)間 小數(shù)位數(shù) 4 掩碼0.000
效率 格式 百分比
再進(jìn)行升遷,還是不成功,錯(cuò)誤如上。
2.再檢查數(shù)據(jù)表的索引,發(fā)現(xiàn)有一個(gè)索引的索引名與字段名不同,且索引名有 / 這個(gè)特殊字符,修改了這個(gè)索引名
再嘗試?yán)^續(xù)升遷,還是同樣的錯(cuò)誤。
這時(shí)突然想起以前有一次幫一個(gè)香港客戶升遷繁體Access 97數(shù)據(jù)庫到Sql server時(shí)遇到一個(gè)問題,就是數(shù)據(jù)表里的日期有一些亂碼或不正確的日期。
3.馬上將這個(gè)升遷失敗的數(shù)據(jù)表打開,查看日期字段的內(nèi)容,果不其然,日期有問題,有非法的日期內(nèi)容,如下圖所示
改正這些錯(cuò)誤的日期,再重新升遷,終于成功!
升遷成功后的提示畫面
所以從Access Migrate 到Sql server時(shí)一定要注意數(shù)據(jù)內(nèi)容本身有否問題
另補(bǔ)充一個(gè)特別重要的經(jīng)驗(yàn):
除了要按日期順排序外,也要降序排序看看日期內(nèi)容有否問題。有些日期是太小,有些日期是太大而導(dǎo)致無法導(dǎo)入
另還要檢查 有否 2月 有 2月30日的,其它月份 有32日的
另還要檢查 Sql server中是否已經(jīng)存在同名的表名
另一個(gè)經(jīng)驗(yàn),當(dāng)不知道是什么原因?qū)е翧ccess升遷到sql server失敗時(shí),最快的方法,是逐個(gè)刪除一些字段,看看刪除哪個(gè)字段之后,升遷成功了,就可判斷是這個(gè)字段的數(shù)據(jù)出現(xiàn)問題了。逐個(gè)排除法。
還有可能是sql server數(shù)據(jù)庫有問題,會(huì)導(dǎo)致所有表升遷不了,要嘗試一下升遷到一個(gè)新的數(shù)據(jù)庫是否正常,提成除sql server這個(gè)數(shù)據(jù)庫的問題
再補(bǔ)充一個(gè)經(jīng)驗(yàn):
如果是日期字段(但內(nèi)容是保存時(shí)間的)經(jīng)常會(huì)出現(xiàn)升遷不了,出錯(cuò),找來找去找不到原因。解決辦法很簡單,只要把時(shí)間按升序排序
如果這些時(shí)間排在00:00:00 前面的 時(shí)間肯定有問題,刪除這些記錄或手工改一下記錄就可成功移植了。
正常 排序 ,空的在最前面,然后是00:00:00 但這些錯(cuò)誤的時(shí)間會(huì)排在00:00:00 前面,有可能是有隱藏的日期如1899/01/01 之類的日期隱藏了
補(bǔ)充閱讀:
在Access的早期版本中,Microsoft就開發(fā)了Upsizing Wizard,通過該向?qū)Э梢院苋菀椎貙ccess數(shù)據(jù)表轉(zhuǎn)換成SQL Server數(shù)據(jù)表。當(dāng)進(jìn)行Access數(shù)據(jù)表升遷時(shí),該向?qū)峁┝艘子诓僮鞯慕缑嬗糜谶x擇數(shù)據(jù)表和指定附加選項(xiàng)。但是,該向?qū)Р⒉荒軐?duì)所有的版本進(jìn)行升遷。目前,有一款新的轉(zhuǎn)換工具——SQL Server遷移助手(SQL Server Migration Assistant,SSMA),它不僅可以完成簡單的上傳任務(wù),而且還可以將Access中的一些特定選項(xiàng)(如Allow Zero Length屬性)轉(zhuǎn)換成SQL Server中類似的屬性。此外,SSMA也可以在需要轉(zhuǎn)換時(shí)給出一些智能推薦,如在表中添加rowversion列能夠確保行的唯一性。
由于SSMA更適合現(xiàn)在的表升遷的需要,因此沒有理由再使用原來的Upsizing Wizard。SSMA可以從Microsoft下載中心免費(fèi)下載。另外,讀者可以在本書的后面發(fā)現(xiàn),通過Access Web應(yīng)用也可以將Access數(shù)據(jù)導(dǎo)入到SQL Server表中,而且不需要配置步驟,要比SSMA和Upsizing Wizard更簡單。
- office課程播放地址及課程明細(xì)
- Excel Word PPT Access VBA等Office技巧學(xué)習(xí)平臺(tái)
- 將( .accdb) 文件格式數(shù)據(jù)庫轉(zhuǎn)換為早期版本(.mdb)的文件格式
- 將早期的數(shù)據(jù)庫文件格式(.mdb)轉(zhuǎn)換為 (.accdb) 文件格式
- KB5002984:配置 Jet Red Database Engine 數(shù)據(jù)庫引擎和訪問連接引擎以阻止對(duì)遠(yuǎn)程數(shù)據(jù)庫的訪問(remote table)
- Access 365 /Access 2019 數(shù)據(jù)庫中哪些函數(shù)功能和屬性被沙箱模式阻止(如未啟動(dòng)宏時(shí))
- Access Runtime(運(yùn)行時(shí))最全的下載(2007 2010 2013 2016 2019 Access 365)
- Activex控件或Dll 在某些電腦無法正常注冊(cè)的解決辦法(regsvr32注冊(cè)時(shí)卡?。?/a>
- office使用部分控件時(shí)提示“您沒有使用該ActiveX控件許可的問題”的解決方法
- RTF文件(富文本格式)的一些解析
- Access樹控件(treeview) 64位Office下出現(xiàn)橫向滾動(dòng)條不會(huì)自動(dòng)定位的解決辦法
- Access中國樹控件 在win10電腦 節(jié)點(diǎn)行間距太小的解決辦法
- EXCEL 2019 64位版(Office 2019 64位)早就支持64位Treeview 樹控件 ListView列表等64位MSCOMMCTL.OCX控件下載
- VBA或VB6調(diào)用WebService(直接Post方式)并解析返回的XML
- 早期PB程序連接Sqlserver出現(xiàn)錯(cuò)誤
- MMC 不能打開文件C:/Program Files/Microsoft SQL Server/80/Tools/Binn/SQL Server Enterprise Manager.MSC 可能是由于文件不存在,不是一個(gè)MMC控制臺(tái),或者用后來的MMC版
- sql server連接不了的解決辦法
- localhost與127.0.0.1區(qū)別
- Roych的淺談數(shù)據(jù)庫開發(fā)系列(Sql Server)
- sqlserver 自動(dòng)備份對(duì)備份目錄沒有存取權(quán)限的解決辦法
- 安裝Sql server 2005 express 和SQLServer2005 Express版企業(yè)管理器 SQLServer2005_SSMSEE
聯(lián)系人: | 王先生 |
---|---|
Email: | 18449932@qq.com |
QQ: | 18449932 |
微博: | officecn01 |