開(kāi)放式數(shù)據(jù)庫(kù)連接 (ODBC) 接口是由 Microsoft Corporation 定義的,它是 Windows 環(huán)境中用于連接客戶端應(yīng)用程序與數(shù)據(jù)庫(kù)管理系統(tǒng)的標(biāo)準(zhǔn)接口。可通過(guò)指定連接參數(shù)來(lái)進(jìn)行連接。通常,可以方便地收集一組連接參數(shù),并將它們存儲(chǔ)到某個(gè) ODBC 數(shù)據(jù)源中。ODBC 數(shù)據(jù)源是保存連接參數(shù)以供重復(fù)使用的簡(jiǎn)便方法。
有關(guān)詳細(xì)信息,請(qǐng)參見(jiàn)使用 ODBC 數(shù)據(jù)源。
本節(jié)介紹如何在 Windows 桌上型計(jì)算機(jī)上創(chuàng)建 ODBC 數(shù)據(jù)源,以連接到 Windows CE 設(shè)備上運(yùn)行的數(shù)據(jù)庫(kù)。
創(chuàng)建 ODBC 數(shù)據(jù)源以連接到 Windows CE 設(shè)備
打開(kāi)桌上型計(jì)算機(jī)上的 ODBC 管理器。
從 [開(kāi)始] 菜單,選擇 [程序] > [SQL Anywhere 9] > [Adaptive Server Anywhere] > [ODBC 管理器]。
即會(huì)出現(xiàn) ODBC 管理器。
在 [用戶 DSN] 選項(xiàng)卡上,單擊 [添加]。
出現(xiàn) [創(chuàng)建新數(shù)據(jù)源] 對(duì)話框。
選擇 [Adaptive Server Anywhere 9.0],然后單擊 [完成]。
即會(huì)出現(xiàn) [ODBC 配置] 對(duì)話框。
在 [ODBC] 選項(xiàng)卡的 [數(shù)據(jù)源名稱(chēng)] 字段中,鍵入數(shù)據(jù)源的名稱(chēng)。
例如,鍵入 CEdevice。
在 [登錄](méi) 選項(xiàng)卡上,選擇 [提供用戶 ID 和口令],并將 [用戶 ID] 和 [口令] 字段保留空白。
每次連接到數(shù)據(jù)庫(kù)時(shí),您都需要提供用戶 ID 和口令。
提示
連接到數(shù)據(jù)庫(kù)時(shí),缺省用戶 ID 為 DBA。缺省口令為 SQL。
在 [數(shù)據(jù)庫(kù)] 選項(xiàng)卡上,將 [服務(wù)器名] 字段保留空白。
每次從桌上型計(jì)算機(jī)連接時(shí),您都必須指定服務(wù)器名。此名稱(chēng)出現(xiàn)在 Windows CE 設(shè)備的 [服務(wù)器消息] 窗口的標(biāo)題欄中。
在 [網(wǎng)絡(luò)] 選項(xiàng)卡中,選擇 [TCP/IP] 復(fù)選框。
在相鄰字段中,鍵入連接參數(shù)。
例如,鍵入 host=127.0.0.1;DoBroadcast=none;VerifyServerName=NO。
Host 此參數(shù)指定 Windows CE 設(shè)備監(jiān)聽(tīng)的 IP 地址。
如果您必須編輯注冊(cè)表才能連接到 Windows CE 設(shè)備,請(qǐng)使用缺省 IP 地址 127.0.0.1。
有關(guān)詳細(xì)信息,請(qǐng)參見(jiàn)編輯注冊(cè)表。
否則,請(qǐng)使用 Windows CE 設(shè)備的 IP 地址。
有關(guān)詳細(xì)信息,請(qǐng)參見(jiàn)確定 Windows CE 設(shè)備的 IP 地址。
有關(guān)詳細(xì)信息,請(qǐng)參見(jiàn)使用 TCP/IP 協(xié)議。
DoBroadcast 此參數(shù)控制進(jìn)行 TCP/IP 連接的方式。
如果指定 DoBroadcast=none,則直接使用指定的端口進(jìn)行 TCP/IP 連接。如果您必須編輯注冊(cè)表才能連接到您的 Windows CE 設(shè)備,則使用此設(shè)置。
有關(guān)詳細(xì)信息,請(qǐng)參見(jiàn)編輯注冊(cè)表。
當(dāng)指定 DoBroadcast=direct 時(shí),要搜索數(shù)據(jù)庫(kù)服務(wù)器,不需要對(duì)本地子網(wǎng)執(zhí)行廣播。但需要提供主機(jī) IP 地址。
有關(guān)詳細(xì)信息,請(qǐng)參見(jiàn)確定 Windows CE 設(shè)備的 IP 地址。
單擊 [確定] 以創(chuàng)建該數(shù)據(jù)源。
現(xiàn)在,您可以使用剛創(chuàng)建的數(shù)據(jù)源從桌上型計(jì)算機(jī)連接到 Windows CE 設(shè)備上運(yùn)行的數(shù)據(jù)庫(kù)。
編輯注冊(cè)表:
1.停止桌上型計(jì)算機(jī)和 Windows CE 設(shè)備上運(yùn)行的所有 Adaptive Server Anywhere 數(shù)據(jù)庫(kù)服務(wù)器。
2.將 Windows CE 設(shè)備從其底座中取出。
3.打開(kāi)桌上型計(jì)算機(jī)上的注冊(cè)表編輯器。
4.在命令提示符處鍵入 regedit。
5.在注冊(cè)表編輯器中,打開(kāi)下面的項(xiàng) HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows CE Services\ProxyPorts。
從 [編輯] 菜單中,選擇 [新建] > [DWORD 值]。
輸入名稱(chēng) ASA。
6.雙擊您剛剛創(chuàng)建的 ASA 項(xiàng)。
7.為其指定十進(jìn)制值 2638。
這是 Adaptive Server Anywhere 的缺省 TCP/IP 端口值。
注意
每次將 Windows CE 設(shè)備安裝到底座時(shí),ActiveSync 會(huì)將端口 2638 上的通信轉(zhuǎn)發(fā)給該設(shè)備。因此,如果將 Windows CE 設(shè)備安裝到底座時(shí)啟動(dòng)桌上型計(jì)算機(jī)上的服務(wù)器,則無(wú)法使用缺省端口 2638。如果出現(xiàn)這樣的問(wèn)題,您可以選擇其它端口來(lái)專(zhuān)門(mén)傳輸 Windows CE 通信。
8.單擊 [確定]。
對(duì)Symbol設(shè)備的補(bǔ)充:
今天準(zhǔn)備連接Symbol MC9090的設(shè)備,居然odbc連接失敗,提示我"TCPIP requires a server name". 郁悶! :(
難道連Symbol的設(shè)備需要制定Server的名字? 立馬輸了密碼,還是不行!錯(cuò)誤提示為"Database Server not found".
這下被雷了,沒(méi)折了! Go Google!折騰半小時(shí)也沒(méi)有鉤到什么. 最后自己瞎折騰了好久,試驗(yàn)出一個(gè)解決的辦法. 步驟如下:
1.指定 DoBroadcast=direct (要搜索數(shù)據(jù)庫(kù)服務(wù)器,不需要對(duì)本地子網(wǎng)執(zhí)行廣播)
2.指定設(shè)備的IP 地址
最終的TCP/IP字符串類(lèi)似為 host=169.254.2.1;DoBroadcast=direct;VerifyServerName=NO
Note: 原來(lái)的TCP/IP字符串 host=127.0.0.1;DoBroadcast=ALL;VerifyServerName=NO
Character Set: utf-8