c#与access建立连接用作登录_组态王与Access数据库的数据交换
1.SQL訪問管理器
SQL訪問管理器用來建立數(shù)據(jù)庫(kù)列和組態(tài)王變量之間的聯(lián)系。包括表格模板和記錄體兩部分功能。通過表格模板在數(shù)據(jù)庫(kù)表中建立表格;通過記錄體建立數(shù)據(jù)庫(kù)表格列和組態(tài)王之間的聯(lián)系,允許組態(tài)王通過記錄體直接操縱數(shù)據(jù)庫(kù)中的數(shù)據(jù)。表格模板和記錄體都是在工程瀏覽器中建立的。
2.創(chuàng)建表格模板
在工程瀏覽器中左側(cè)工程目錄顯示區(qū)中選擇“SQL訪問管理器”下的“表格模板”項(xiàng),在右側(cè)目錄內(nèi)容顯示區(qū)中雙擊“新建”,彈出“創(chuàng)建表格模板”對(duì)話框,如下圖。
建立表格模板的目的在于定義一種格式,在后面用到是SQLCreatTable(),以次格式在Access數(shù)據(jù)庫(kù)中建立表格。
3.創(chuàng)建記錄體
在工程瀏覽器中左側(cè)工程目錄顯示區(qū)中選擇“SQL訪問管理器”下的“記錄體”項(xiàng),在右側(cè)目錄內(nèi)容顯示區(qū)中雙擊“新建”,彈出“創(chuàng)建記錄體”對(duì)話框,如下圖。
其中:
字段名稱填寫數(shù)據(jù)庫(kù)表格中的列名。
組態(tài)王變量填寫和表格中指定列相關(guān)聯(lián)的組態(tài)王變量。
4.建立Access數(shù)據(jù)庫(kù)
1)建立一空Access文件,定名。
2)定義數(shù)據(jù)源
雙擊控制面板下的“ODBC數(shù)據(jù)源(32位)”選項(xiàng),彈出“ODBC數(shù)據(jù)源管理器”對(duì)話框。
選擇“用戶DSN”屬性頁,并單擊“添加”按鈕。
在彈出的“創(chuàng)建新數(shù)據(jù)源”對(duì)話框中,選擇“Mirosoft Access Driver”單擊“完成”按鈕。
彈出“ODBC Microsoft Access安裝”對(duì)話框,定義數(shù)據(jù)源名。
單擊“選取”按鈕,從中選擇相應(yīng)路徑下剛剛定義的數(shù)據(jù)庫(kù)文件。
單擊“確定”按鈕,完成對(duì)數(shù)據(jù)源的配置。
5.對(duì)數(shù)據(jù)庫(kù)的操作
首先在數(shù)據(jù)詞典里建立變量DeviceID,為內(nèi)存整形,是數(shù)據(jù)庫(kù)連接時(shí)產(chǎn)生的連接號(hào)。
5.1連接數(shù)據(jù)庫(kù)
函數(shù)SQLConnect( DeviceID, "dsn=;uid=;pwd=");
參數(shù)說明:
DeviceID? SQLConnct()產(chǎn)生的連接號(hào)。
"dsn=;uid=;pwd="? 連接語句,包括 ODBC中定義的數(shù)據(jù)源名、用戶名和密碼,用戶名和密碼可以缺省。
例子:組態(tài)王以sa身份登錄(無密碼)和名為wang的SQL Server中的pubs數(shù)據(jù)庫(kù)連接。
SQLConnect(DeviceID,“DSN=wang;DATABASE=pubs;UID=sa; PWD=”);
5.2創(chuàng)建表格
函數(shù)SQLCreateTable(DeviceID,TableName,TemplateName);
參數(shù)說明:
DeviceID? SQLConnct()產(chǎn)生的連接號(hào)。
TableName? 想要?jiǎng)?chuàng)建的數(shù)據(jù)庫(kù)的表格名。
TemplateName? 表格模板名。
例子:下例創(chuàng)建一個(gè)名為kingview的新表,模板為table1。
SQLCreateTable(DeviceID, “kingview”, “table1”);
5.3插入新記錄
函數(shù)SQLInsert(DeviceID, TableName, BindList);
參數(shù)說明:
DeviceID? SQLConnct()產(chǎn)生的連接號(hào)。
TableName? 數(shù)據(jù)庫(kù)的表格名。
BindList? 記錄體。
例子:在表格kingview中插入一條記錄,記錄體bind1。
SQLInsert(ConnectionID, “kingview”, “bind1”);
5.4得到選擇集
函數(shù)SQLSelect(DeviceID, TableName, BindList, WhereExpr, OrderByExpr);
函數(shù)說明:
DeviceID? SQLConnct()產(chǎn)生的連接號(hào)。
TableName? 數(shù)據(jù)庫(kù)的表格名。
BindList? 記錄體。
WhereExpression 指定函數(shù)起作用行的條件。
注意:如果列名是字符串,表達(dá)式必須在單引號(hào)中。
下例選擇“名字”列中等于Asia的行:
名字= ’Asia’。
下例選擇“年齡”列中在20和30之間的行:
年齡>=20 and 年齡<30< span="">。
OrderByExpression 定義排序的列和方向。只有列名可以用來排序,表達(dá)式:列名[ASC|DESC]。
下例將以“溫度”列的升序排序。
“溫度 ASC”。
排序中也可使用多重表達(dá)式。例如:
“溫度 ASC,時(shí)間 DESC”。
5.5選擇記錄
SQLFirst(DeviceID);? 從SQLSelect()函數(shù)產(chǎn)生的結(jié)果集中選取首項(xiàng)記錄。
SQLNext(DeviceID);? 選取選擇集中的下一條記錄。
SQLPrev(DeviceID);? 選取選擇集中的上一條記錄。
SQLLast(DeviceID);? 選取由SQLSelect()創(chuàng)建的選擇集的末條記錄。
DeviceID? SQLConnct()產(chǎn)生的連接號(hào)
5.6斷開數(shù)據(jù)庫(kù)
SQLDisconnect(DeviceID);
DeviceID? SQLConnct()產(chǎn)生的連接號(hào)。
總結(jié)
以上是生活随笔為你收集整理的c#与access建立连接用作登录_组态王与Access数据库的数据交换的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Android——Ubuntu andr
- 下一篇: C#.NET中的事件2