兩種,一種用你說的ODBC,一種用OLEDB.ODBC的訪問要比OLEDB多執行一步.
微軟是提倡用OLDEB來連接資料庫.
所以最好用OLEDB
例如:
Dim
Conn
Dim
strConn
strConn="Provider=Microsoft.Jet.OLEDB.4.0;Data
Source="&Server.MapPath("db.mdb")
Set
Conn=Server.CreateObject("ADODB.Connection")
Conn.Open
strConn
2. 如何利用ODBC訪問WINCC的歷史資料庫
WINCC
作為一個工控軟體,有著工控軟體的一系列特徵:能顯示實時數據,歷史數據,生
成實時數據曲線與歷史數據曲線,
並能生成報表。
然而
WINCC
與其它的工控軟體包有不同
的地方:
它的數據是保存在標準的及功能強大的
Sybase sql Anywhere
資料庫中
,
所以,
我們
可以像訪問一般的資料庫一樣,通過
ODBC
直接訪問
WINCC
的歷史資料庫。
一、
通過
Sybase Central 4.0
訪問顯示數據
Wincc
在安裝時就把
Sysbase
數據引擎與
Sybase
Central
4.0
一同安裝到系統中,你可以在
Program
Files\Sybase\Shared\
中找到
Sybase
Central
4.0
,你可在在其目錄下
\java\
中發
現
scjview.exe
,該程序功能相當於
SQL
server
的企業管理器。你可以通過其查看你在
WinCC
中的歸檔數據。
使用方法:
1)
運行
WINCC
,這時
WINCC
會在
ODBC
中添加兩條數據源:
CC_FY_02-10-16_10:40:18
CC_FY_02-10-16_10:40:18R
其中
CC_FY_02-10-16_10:40:18R
是可以通過
Sybase
Central
4.0
及別的一些工具不用
用戶名與密碼讀取的。這就是我們
WinCC
的歷史資料庫。
注意:這兩條
ODBC
名不是一成不變的,它是結構如下
CC_FY_02-10-16_10:40:18R
CC
:
固有的,指明是
WinCC
生成的
ODBC
。
FY
:
項目名,這是我這個
WinCC
項目名稱
02-10-16
:最後一次修改的日期。
10:40:18
:最後一次修改的時間。
R
:
表示是運行庫。
2
)
、運行
scjview.exe
,點擊
Adaptive
Server
AnyWhere
7
按右鍵,選擇
Connect
。將會彈出
Connect
配置界面。
在
Identification
的頁面,選中
ODBC SOURCE NAME
點
BROWSE
則會列出所有對
Sybase
數據引擎的
ODBC
名,選擇
CC_FY_02-10-16_10:40:18R
,點擊「
OK
「、
「
OK
「即可。
這時在
Adaptive Server AnyWhere 7
下面會出現你的計算機名,並已連通了你的
WINCC
歷
史資料庫。
好了,我們現在可以查看
WinCC
的歷史數據了。
展開:
Adaptive Server AnyWhere 7
(
DBA
)
展開:
TABLE
我們現在可以看到資料庫的表名與表結構了:
表名:
PDE#HQZ#GAS_PRE
組成方式如下
PDE
:固有
HQZ
:歸檔名稱
GAS_PRE:
變數名。
表結構:有三個欄位:
T, V
, F
T
:時間
V
:值
F
:標志
由於沒有可靠的資料可查,其
F
的名值表示的含義就不得而知,不過,在我的使用中,我
將
F
值
8392705
作為一個合法值,
在
WINCC
的處理中沒有出過錯,
但別的
FLAG
值的含義,
只能問西門子公司了。
二、
利用
VB
編寫程序訪問
WINCC
歷史資料庫。
上面已明確描述了
WINCC
的歷史資料庫的結構組成與表結構,
那麼我們就可以通過編程訪
問
WINCC
的歷史資料庫。如其它通過
ODBC
訪問的數據一樣。如下面的小例子
在
VB
中,先引用
ADO
組件。並聲明
ADO
變數。
Private cn As ADODB.Connection
Private rs As ADODB.Recordset
Const dsn = 「CC_FY_02
-10-
16_10:40:18R」
Private sub insertData(nowV
alue as double)
Dim nowtime as string
Nowtime =now
cn.Open dsn, "", ""
sqlstr=」
insert
into
PDE#HQZ#GAS_PRE(T,V
,F)
V
alues(„」+
Nowtime
+」‟,」+
nowV
alue
+」,
8392705) 」
cn.Execute sqlstr
cn.close
End sub
本程序中的子程序只處理了數據插入,其它讀出就更為簡單,與其它的
ADO
訪問是一模一
樣的,這里就不多說了。
三、
結語
能通過
ODBC
訪問
WINCC
的歷史數據,給我們提供了更多了解決辦法,特別是在企業信
息化平台上使用非實時數據方面,可以人為給
WINCC
添加正確的歷史數據,使
WINCC
的
功能更為強大。
由於
ODBC
名與項目的修改時間有關,所以在項目頻繁變化時,請不要使用這個功能。
WinCC
在啟動時自動添加
ODBC
名,在關閉時自動刪除,所以,在
WINCC
關閉後,不能
再通過
ODBC
訪問
ODBC
。
3. 如何使用ODBC來連接ACCESS資料庫
作步驟如下:
(1)單擊「開始」按鈕,選擇「程序」→「管理工具」→「數據源(ODBC)」命令,打開「ODBC數據源管理器」對話框,打開「系統DSN」選項卡。
(2)單擊「添加」按鈕,打開「創建新數據源」對話框,選擇安裝數據源的驅動程序,這里選擇「Microsoft Access Driver (*.mdb)」,如圖2.6所示。
選擇安裝數據源的驅動程序
(3)單擊「完成」按鈕,打開「ODBC Microsoft Access 安裝」對話框,填寫「數據源名」及相關「說明」,並指定所要連接資料庫的路徑,如圖2.7所示。
「ODBC Microsoft Access 安裝」對話框
(4)單擊「確定」按鈕,完成配置系統DSN的操作。
使用ODBC方法連接Access資料庫的代碼如下:
常式2-2 代碼位置:光碟\mr\2\2.2\2.2.1\02\conn.asp
<%
Dim Conn
Set Conn=Server.CreateObject("ADODB.Connection")
Conn.Open "DSN=AccessDSN"
%>
如果Access資料庫設有密碼,可以使用以下代碼連接資料庫:
<%
Dim Conn
Set Conn=Server.CreateObject("ADODB.Connection")
Conn.Open "DSN=AccessDSN;uid=admin;pwd=123456;"
%>
4. 如何用ODBC訪問SQL資料庫
如何用ODBC訪問SQL資料庫
SQL Server 2008資料庫部署完成後,伺服器訪問和客戶端計算機訪問都可以通過ODBC訪問SQL資料庫。
基於ODBC的應用程序對資料庫的操作不依賴任何資料庫系統,不直接與資料庫系統聯系,所有的資料庫操作由對應的ODBC驅動程序完成。下面小內為大家介紹如何用ODBC訪問SQL資料庫。
1.選擇「開始」→「管理工具」→「數據源(ODBC)」選項,顯示「ODBC數據源管理器」對話框。
2.切換到「系統DSN」選項卡,默認情況下計算機中沒有部署和任何資料庫的連接。
3.單擊「添加」按鈕,顯示「創建新數據源」對話框。在「選擇您想為其安裝數據源的驅動程序」列表中,選擇「SQL Server」選項。
4.單擊「完成」按鈕,啟動創建新數據源向導,顯示「創建到SQL Server的新數據源」對話框。在「名稱」文本框中,鍵入數據源的名稱,在「伺服器」列表中選擇目標SQL Server 2008資料庫伺服器,或者鍵入資料庫伺服器的名稱。
5.單擊「下一步」按鈕,顯示下圖對話框,設置資料庫的身份驗證方法。ODBC支持基於Windows NT模式的身份驗證和基於SQL Server的驗證模式。本例中選擇SQL Server驗證模式。在「登錄ID」文本框中,鍵入資料庫管理員的名稱,在「密碼」文本框鍵入資料庫管理員的密碼。
6.單擊「下一步」按鈕,顯示下圖所示的對話框。設置連接的目標SQL Server 2008資料庫伺服器後,默認連接的資料庫。默認沒有選擇任何資料庫,其他選項使用默認值即可。
7.單擊「下一步」設置連接到SQL Server 2008的資料庫參數,建議使用默認值。如果在部署SQL Server 2008的過程中,更改了默認的資料庫參數,建議在此對話框中設置和部署資料庫時使用相同的參數。
8.單擊「完成」按鈕,顯示創建ODBC數據源使用的參數。
9.單擊「測試數據源」按鈕,測試能夠連接到目標資料庫,如果成功顯示「SQL Server ODBC 數據源測試」對話框,在「測試結果」列表中會顯示「測試成功」信息。
10.單擊兩次「確定」按鈕,完成ODBC數據源的創建,創建成功的數據源。應用程序即可通過ODBC數據源連接到目標資料庫。
5. 如何在Linux下通過ODBC配置訪問遠程資料庫,0
例如:sqlplus
username/password@servicename
於是想,用我的兩台電腦雙機互聯試一試,也玩個遠程連接。實驗如下:
首先在我的台式機上安裝了Oracle9i的資料庫管理系統,並建立了一個資料庫實例:xy然後為該實例新增了一個用戶,用戶名和密碼都是kxy01
。啟動實例xy後,在台式機上,直接在cmd環境鍵入:sqlplus
kxy01/kxy01@xy
就可以連接上資料庫,呵呵,想來本地連接都是不費吹灰之力就行的。
之後,在我的筆記本上安裝了Oracle9i的Client工具。然後試著直接用上述命令訪問,顯然是不行的,系統返回無法解析服務名的錯誤信息。
要實現連接到遠程資料庫,先了解一下相關知識吧,查了一下書。原來,
Net
Configuration
Assitant
的工具,應該就是它了。啟動之:
Net
Configuration
Assitant共提供了4個配置功能:
監聽程序配置,
命名方法配置,
本地網路服務名配置
目錄使用配置。
要從遠程位置連接Oracle資料庫,必須配置Oracle網路監聽程序。
Net
Configuration
Assitant
可以用於此項配置工作,啟動後選擇監聽程序配置,一路下一步即可。
之後點開命名方法配置,系統已經默認提供了三種,其他兩種也不太認識,乾脆不改了,直接點後退,回到主菜單。
主菜單中,第三項是本地網路服務名配置。要通過網路訪問Oracle資料庫或其他服務,要使用網路服務名,該項配置允許使用由本地命名解析的網路服務名。而第四項為目錄使用配置,點開一看,居然要選擇目錄伺服器,我這一共就兩台電腦,要什麼目錄服務,看來第四項不適合本實驗了,顯然,關鍵配置就在第三項:本地網路服務名配置。
將其點開,選擇添加網路服務名操作,然後會詢問你希望訪問何種版本的Oracle資料庫服務。
按照常理,我裝的是Oracle9i自然應該選擇第一個(Oracle8i或更高版本資料庫服務),可經過實踐證明,只有選擇第二個(Oracle8i發行版8.0資料庫或服務)才能正常實現遠程連接,不明其中原因,也就只有選第二個拉。
然後輸入我的資料庫實例SID:xy然後選擇網路協議,雙機互聯應該選擇TCP吧,再然後填寫資料庫所在的主機名:kxyhome
。埠號採用默認的1521。
點擊下一步,進行資料庫連接的測試,測試成功後進行網路服務名的填寫,這個名字就應該是sqlplus連接時候用的服務名了,這里我們使用:xyhome之後一切配置完成,來到命行,使用sqlplus進行連接:sqlplus
kxy01/kxy01@xyhome成功啦!
6. 如何使用odbc連接資料庫
首先安裝Mysql資料庫。
然後安裝MySQL ODBC 驅動
將要連接的MySQL資料庫文件夾復制到MySQL安裝文件夾的DATE目錄下,DATE下的文件名為資料庫名:
1、C:Program FilesMySQLMySQL Server 5.0data
2、C:ProgramDataMySQLMySQL Server 5.1data
根據您的系統可能不能,本人WIN7系統為上面第二個目錄,安裝完成後,我們下一步就創建ODBC數據源,步驟如下:
一、打開控制面板——管理工具——數據源(ODBC)——文件DSN如下圖:
然後系統會彈出下圖窗口,在Server:中填入本機地址:127.0.0.1, Port:3306(MySQL默認埠),User:填root(默認用戶名為小寫root),密碼填入安裝時輸入的密碼,database:選擇MySQL資料庫,完成按OK這樣數據源就創建成功!
然後打開Access--外部數據--導入ODBC資料庫—選擇導入新表或鏈接--然後選擇剛剛創建的數據源,也可以在這里新建數據源,方法和前面一樣。
然後輸入密碼,選擇資料庫按OK建立鏈接!
7. 怎麼通過odbc連接db資料庫
開始——控制面板——管理器——數據源(ODBC)裡面設置下你的SQL 就可以在程序中連接了
8. ODBC技術訪問資料庫是怎麼回事ODBC是軟體還是什麼啊使用它還是要建立資料庫吧,用access可以吧
access可以使用,關於ODBC技術,以下是說明。ODBC(Open Database Connectivity,開放資料庫互連)是微軟公司開放服務結構(WOSA,Windows Open Services Architecture)中有關資料庫的一個組成部分,它建立了一組規范,並提供了一組對資料庫訪問的標准API(應用程序編程介面)。這些API利用SQL來完成其大部分任務。ODBC本身也提供了對SQL語言的支持,用戶可以直接將SQL語句送給ODBC。
一個基於ODBC的應用程序對資料庫的操作不依賴任何DBMS,不直接與DBMS打交道,所有的資料庫操作由對應的DBMS的ODBC驅動程序完成。也就是說,不論是FoxPro、Access , MYSQL還是Oracle資料庫,均可用ODBC API進行訪問。由此可見,ODBC的最大優點是能以統一的方式處理所有的資料庫。
一個完整的ODBC由下列幾個部件組成:
應用程序(Application)。
ODBC管理器(Administrator)。該程序位於Windows 95控制面板(Control Panel)的32位ODBC內,其主要任務是管理安裝的ODBC驅動程序和管理數據源。
驅動程序管理器(Driver Manager)。驅動程序管理器包含在ODBC32.DLL中,對用戶是透明的。其任務是管理ODBC驅動程序,是ODBC中最重要的部件。
ODBC API。
ODBC 驅動程序。是一些DLL,提供了ODBC和資料庫之間的介面。
數據源。數據源包含了資料庫位置和資料庫類型等信息,實際上是一種數據連接的抽象。
各部件之間的關系如圖下圖所示:
應用程序要訪問一個資料庫,首先必須用ODBC管理器注冊一個數據源,管理器根據數據源提供的資料庫位置、資料庫類型及ODBC驅動程序等信息,建立起ODBC與具體資料庫的聯系。這樣,只要應用程序將數據源名提供給ODBC,ODBC就能建立起與相應資料庫的連接。
在ODBC中,ODBC API不能直接訪問資料庫,必須通過驅動程序管理器與資料庫交換信息。驅動程序管理器負責將應用程序對ODBC API的調用傳遞給正確的驅動程序,而驅動程序在執行完相應的操作後,將結果通過驅動程序管理器返回給應用程序。
在訪問ODBC數據源時需要ODBC驅動程序的支持。用Visual C++ 5.0安裝程序可以安裝SQL Server、 Access、 Paradox、 dBase、 FoxPro、 Excel、 Oracle 和Microsoft Text等驅動程序.在預設情況下,VC5.0隻會安裝SQL Server、 Access、 FoxPro和dBase的驅動程序.如果用戶需要安裝別的驅動程序,則需要重新運行VC 5.0的安裝程序並選擇所需的驅動程序。
ODBC 使用層次的方法來管理資料庫,在資料庫通信結構的每一層,對可能出現依賴資料庫產品自身特性的地方,ODBC 都引入一個公共介面以解決潛在的不一致性,從而很好地解決了基於資料庫系統應用程序的相對獨立性,這也是ODBC 一經推出就獲得巨大成功的重要原因之一。
從結構上分,ODBC 分為單束式和多束式兩類。
1.單束式驅動程序
單束式驅動程序介於應用程序和資料庫之間,像中介驅動程序一樣數據提供一個統一的數據訪問方式。當用戶進行資料庫操作時,應用程序傳遞一個ODBC 函數調用給ODBC 驅動程序管理器,由ODBC API 判斷該調用是由它直接處理並將結果返回還是送交驅動程序執行並將結果返回。由上可見,單束式驅動程序本身是一個資料庫引擎,由它直接可完成對資料庫的操作,盡管該資料庫可能位於網路的任何地方。
2.多束式驅動程序
多束式驅動程序負責在資料庫引擎和客戶應用程序之間傳送命令和數據,它本身並不執行數據處理操作而用於遠程操作的網路通信協議的一個界面。前端應用程序提出對資料庫處理的請求,該請求轉給ODBC 驅動程序管理器,驅動程序管理器依據請求的情況,就地完成或傳給多束驅動程序,多束式驅動程序將請求翻譯為特定廠家的資料庫通信介面(如Oracle 的SQLNet)所能理解的形式並交於介面去處理,介面把請求經網路傳送給伺服器上的數據引擎,伺服器處理完後把結果發回給資料庫通信介面,資料庫介面將結果傳給多束式ODBC 驅動程序,再由驅動程序將結果傳給應用程序。 希望以上答案對你有所幫助,祝你好運!!
9. 通過ODBC 如何 連接網路資料庫C#或VB.net
由於你用的是access資料庫,access資料庫是本地資料庫,不支持網路使用.建議你改用sql server或者其它支持網路應用的資料庫.
如果你要在另一台機器上使用access資料庫,一是你把資料庫拷貝到另一台機器上,但這樣是兩個資料庫是相互獨立的,數據不能共享.另一種方法是開一個有許可權的網路共享,遠程計算機通過網路共享的方法訪問你所使用的access資料庫,兩種方法只要用odbc連接成功,連接字元串和上面使用的是一樣的寫法
10. PHP使用ODBC連接資料庫的方法
本文實例講述了PHP使用ODBC連接資料庫的方法。分享給大家供大家參考。具體實現方法如下:
<!DOCTYPE
html
PUBLIC
"-//W3C//DTD
XHTML
1.0
Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html
xmlns="http://www.w3.org/1999/xhtml"
xml:lang="en"
lang="en">
<head>
<title>PHP
and
ODBC:
XHTML
Example
1</title>
<meta
http-equiv="Content-Type"
content="text/html;
charset=UTF-8"
/>
</head>
<body>
<?php
$conn
=
odbc_connect(
"DRIVER={MySQL
ODBC
3.51
Driver};Server=localhost;Database=phpodbcdb",
"username",
"password");
if
(!($conn))
{
echo
"<p>Connection
to
DB
via
ODBC
failed:
";
echo
odbc_errormsg
($conn
);
echo
"</p>\n";
}
$sql
=
"SELECT
1
as
test";
$rs
=
odbc_exec($conn,$sql);
echo
"<table><tr>";
echo
"<th>Test</th></tr>";
while
(odbc_fetch_row($rs))
{
$result
=
odbc_result($rs,"test");
echo
"<tr><td>$result</td></tr>";
}
odbc_close($conn);
echo
"</table>";
?>
</body>
</html>
希望本文所述對大家的php程序設計有所幫助。