1. 程式人生 > >Access數據庫跨庫查詢及記錄集區分

Access數據庫跨庫查詢及記錄集區分

IT 軟件部署 bsp strong support ali table win 結果

醫療設備軟件一般都是單機軟件,如果是Windows平臺,常會選擇Access數據庫存儲結構化數據,因為他輕量,便於部署。然而隨著醫療信息化的發展,醫生希望對多臺單機設備的數據進行管理,采用網絡數據庫當然可以解決這個問題,但軟件部署會變得比較麻煩,所以如果Access數據能支持跨庫查詢,那就完美了,可喜的是Access從2007版就已經支持該功能了,且查詢速度還非常快。

Access數據庫跨庫查詢可使用“in 字句”,語法如下,可參見微軟幫助手冊:https://support.office.com/zh-cn/article/IN-%E5%AD%90%E5%8F%A5-3f9369a8-2032-4637-81af-699db411fbfa

語法

[SELECT | INSERT] INTO destination IN
{path | ["path" "type"] | ["" [type; DATABASE = path]]}

示例

有兩個數據庫,表ys_user結果如下,希望按時間進行排序

id ys_name ys_date
1 張三 2018/1/1
2 李四 2018/1/3

d:\test1.mdb

id ys_name ys_date
1 王五 2018/1/1
2 麻六 2018/1/2

d:\test2.mdb

查詢語句:

select id,ys_name,ys_date from ys_user in ‘d:\test1.mdb‘, select id,ys_name,ys_date from ys_user in ‘d:\test2.mdb‘ order by ys_date

查詢結果:

id ys_name ys_date
1 張三 2018/1/1
1 王五 2018/1/1

2 麻六 2018/1/2
2 李四 2018/1/3

問題

記錄集是查出來了,但修改記錄集的時候如何知道該條記錄是哪個庫的呢?我們可以在查詢語句中作文章,可以多加一個列

查詢語句

select id,ys_name,ys_date, ‘d:\test1.mdb‘ as dbpath from ys_user in ‘d:\test1.mdb‘, select id,ys_name,ys_date, ‘d:\test2.mdb‘ as dbpath from ys_user in ‘d:\test2.mdb‘ order by ys_date

查詢結果:

id ys_name ys_date dbpath
1 張三 2018/1/1 d:\test1.mdb
1 王五 2018/1/1

d:\test2.mdb
2 麻六 2018/1/2 d:\test2.mdb
2 李四 2018/1/3

d:\test1.mdb

Access數據庫跨庫查詢及記錄集區分