最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

access中鏈接表的問題

 更新時間:2006年10月13日 00:00:00   作者:  
一個使用asp和mdb的站點,某個mdb中使用了鏈接表,鏈接到當前目錄的另一個mdb中的表,這樣可以達到數(shù)據(jù)共享。  
faq-it.org/delphi_win_sdk/問題來了,當將網(wǎng)站發(fā)布到網(wǎng)站的時候,因為網(wǎng)上空間路徑和我本機不同,所以鏈接表失敗,網(wǎng)頁當然也不能打開。  
我覺得解決辦法有:  
一種,在本機上創(chuàng)建與網(wǎng)上空間完全相同的目錄結(jié)構。但這很麻煩,特別是經(jīng)常要換網(wǎng)站的話。  
一種,如何讓鏈接表使用相對路徑,就是鏈接到當前目錄下的那個mdb文件?(對了,access很弱智,鏈接表記錄的是絕對路徑)。  
還一種,如何通過編程(asp  或者本地vba)來實現(xiàn)對鏈接表的鏈接的修改?(又對了,access還是弱智,更新鏈接表我只能使用手工更新,一定要找到那個路徑下的mdb才行!可本地路徑和網(wǎng)上不一樣呀)  

誰能告訴我如何實現(xiàn)上面的后兩種方法?  

---------------------------------------------------------------  

以下是我自己在用的adox代碼,只為了證明我說的access有此功能(說句不好聽的:這關access  p事?。窟@是ado模型該解決的問題。而且你也提錯地方了,提到asp那一塊更合適),做access編程的都應該看得懂,如果你看不懂我也只能說遺憾了。  

Public  Function  NewLinkedExternalTableMdb()  
       Dim  strTargetDB()  As  String  
       Dim  strProviderString()  As  String  
       Dim  strSourceTbl()  As  String  
       Dim  strLinkTblName()  As  String  
       Dim  catDB  As  ADOX.Catalog  
       Dim  tblLink  As  ADOX.Table  
       Dim  tmpLink  As  ADOX.Table  
       Dim  i  As  Integer  
       Dim  j  As  Integer  
       Set  catDB  =  New  ADOX.Catalog  
       catDB.ActiveConnection  =  CurrentProject.Connection  
       i  =  catDB.Tables.Count  
       ReDim  strTargetDB(i)  
       ReDim  strProviderString(i)  
       ReDim  strSourceTbl(i)  
       ReDim  strLinkTblName(i)  
       i  =  1  
       For  Each  tmpLink  In  catDB.Tables  
               If  tmpLink.Properties("Jet  OLEDB:Create  Link")  Then  
                       If  Trim(tmpLink.Properties("Jet  OLEDB:Remote  Table  Name"))  <>  ""  Then  
                               strLinkTblName(i)  =  tmpLink.Name  
                               strTargetDB(i)  =  tmpLink.Properties("Jet  OLEDB:Link  Datasource")  
                               strProviderString(i)  =  tmpLink.Properties("Jet  OLEDB:Link  Provider  String")  
                               strSourceTbl(i)  =  tmpLink.Properties("Jet  OLEDB:Remote  Table  Name")  
                               Do  While  InStr(1,  strTargetDB(i),  "/")  <>  0  
                                       strTargetDB(i)  =  Mid(strTargetDB(i),  InStr(1,  strTargetDB(i),  "/")  +  1,  Len(strTargetDB(i)))  
                               Loop  
                               strTargetDB(i)  =  CurrentProject.Path  &  "/"  &  strTargetDB(i)  
                               i  =  i  +  1  
                       End  If  
               End  If  

       Next  
       j  =  i  -  1  
       For  i  =  1  To  j  
               catDB.Tables.Delete  strLinkTblName(i)  
               Set  tblLink  =  New  ADOX.Table  
               With  tblLink  
                       .Name  =  strLinkTblName(i)  
                       Set  .ParentCatalog  =  catDB  
                       .Properties("Jet  OLEDB:Create  Link")  =  True  
                       .Properties("Jet  OLEDB:Link  Datasource")  =  strTargetDB(i)  
                       .Properties("Jet  OLEDB:Link  Provider  String")  =  strProviderString(i)  
                       .Properties("Jet  OLEDB:Remote  Table  Name")  =  strSourceTbl(i)  
               End  With  
               catDB.Tables.Append  tblLink  
               Set  tblLink  =  Nothing  
       Next  
       Set  catDB  =  Nothing  
End  Function   
 

相關文章

最新評論

霍山县| 皋兰县| 安义县| 威海市| 岳西县| 徐闻县| 丰顺县| 班玛县| 台山市| 涿州市| 开远市| 徐闻县| 观塘区| 柏乡县| 台中市| 沧源| 青浦区| 柘城县| 阿图什市| 会泽县| 惠东县| 洛宁县| 华蓥市| 佛冈县| 镇安县| 逊克县| 平乡县| 当雄县| 冷水江市| 承德县| 贵南县| 隆林| 牙克石市| 安泽县| 嘉鱼县| 白城市| 肥城市| 台湾省| 昌图县| 无极县| 新兴县|