wincc中使用VBS腳本讀寫SQLServer數(shù)據(jù)庫文件_第1頁
wincc中使用VBS腳本讀寫SQLServer數(shù)據(jù)庫文件_第2頁
wincc中使用VBS腳本讀寫SQLServer數(shù)據(jù)庫文件_第3頁
wincc中使用VBS腳本讀寫SQLServer數(shù)據(jù)庫文件_第4頁
wincc中使用VBS腳本讀寫SQLServer數(shù)據(jù)庫文件_第5頁
已閱讀5頁,還剩1頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

...wd......wd......wd...例程:Wincc讀寫SQLServer數(shù)據(jù)庫一、在數(shù)據(jù)庫中建設(shè)數(shù)據(jù)庫文件,文件名為“讀寫數(shù)據(jù)庫〞,在數(shù)據(jù)庫中建設(shè)新的表,命名為“個人信息〞分別建設(shè)編號、姓名、年齡。二、數(shù)據(jù)庫中建設(shè)表后,在wincc中建設(shè)與數(shù)據(jù)庫中類型一樣的變量,變量類型一樣在讀寫數(shù)據(jù)時很重要。在圖形編輯器中新建畫面,并在畫面中增加三個輸入輸出域,并連接變量。三、添加兩個按鈕控件,分別命名為寫數(shù)據(jù)、讀數(shù)據(jù)1、在寫數(shù)據(jù)按鈕中寫入一下VBS腳本wincc變量寫入數(shù)據(jù)庫定義變量DimsConDimsSqlDimoRsDimconnDimoComDimConDimData1,Data2,Data3‘讀取wincc變量Data1=HMIRuntime.tags("編號").readData2=HMIRuntime.tags("姓名").readData3=HMIRuntime.tags("年齡").read‘連接數(shù)據(jù)庫Con="Provider=SQLOLEDB.1;IntegratedSecurity=SSPI;PersistSecurityInfo=False;InitialCatalog=讀寫數(shù)據(jù)庫;DataSource=.\WINCC"Setconn=CreateObject("ADODB.Connection")conn.ConnectionString=Conconn.CursorLocation=3conn.Open‘寫入數(shù)據(jù)庫sSql="insertinto個人信息VALUES('"&Data1&"','"&Data2&"','"&Data3&"');"SetoRs=CreateObject("ADODB.Recordset")SetoCom=CreateObject("ADODB.Command")SetoCom.ActiveConnection=connoCom.CommandType=1oCom.CommandText=sSqlSetoRs=oCom.ExecuteSetoRs=Nothingconn.CloseSetconn=NothingDimsConDimsSqlDimoRsDimconnDimoComDimConDimData1,Data2,Data3'讀取wincc變量Data1=HMIRuntime.tags("編號").readData2=HMIRuntime.tags("姓名").readData3=HMIRuntime.tags("年齡").read'連接數(shù)據(jù)庫Con="Provider=SQLOLEDB.1;nitialCatalog=讀寫數(shù)據(jù)庫;DataSource=panzhiyou;uid=sa;pwd=panzhiyou"Setconn=CreateObject("ADODB.Connection")conn.ConnectionString=Conconn.CursorLocation=3conn.Open'寫入數(shù)據(jù)庫sSql="insertinto個人信息VALUES('"&Data1&"','"&Data2&"','"&Data3&"');"SetoRs=CreateObject("ADODB.Recordset")SetoCom=CreateObject("ADODB.Command")SetoCom.ActiveConnection=connoCom.CommandType=1oCom.CommandText=sSqlSetoRs=oCom.ExecuteSetoRs=Nothingconn.CloseSetconn=Nothing在實際工程中需要修改的只有定義變量時增加或減少數(shù)據(jù)data的個數(shù),Data1=HMIRuntime.tags("編號").read中的變量名,數(shù)據(jù)庫的名字,以及數(shù)據(jù)庫的表名2、在讀數(shù)據(jù)按鈕中寫入一下VBS腳本讀取數(shù)據(jù)庫變量到wincc變量定義變量DimsConDimsSqlDimoRsDimconnDimoComDimConDimData1DimData2DimData3Dimdata4Dimdata5Dimdata6Dimdata7data7=HMIRuntime.tags("編號").readCon="Provider=SQLOLEDB.1;IntegratedSecurity=SSPI;PersistSecurityInfo=False;InitialCatalog=讀寫數(shù)據(jù)庫;DataSource=.\WINCC"Setconn=CreateObject("ADODB.Connection")conn.ConnectionString=Conconn.CursorLocation=3conn.OpensSql="SELECT*FROM個人信息WHERE編號='"&data7&"';"SetoRs=CreateObject("ADODB.Recordset")SetoCom=CreateObject("ADODB.Command")SetoCom.ActiveConnection=connoCom.CommandType=1oCom.CommandText=sSqlSetoRs=oCom.Execute'SetoRs=Nothingdata4=oRs.Fields(0).Valuedata5=oRs.Fields(1).Valuedata6=oRs.Fields(2).Value'data1.writedata4Setdata1=HMIRuntime.Tags("編號")Setdata2=HMIRuntime.Tags("姓名")Setdata3=HMIRuntime.Tags("年齡")data1.Readdata1.Writedata4data2.Readdata2.Writedata5data3.Readdata3.Writedata6SetoRs=Nothingconn.CloseSetconn=NothingDimsConDimsSqlDimoRsDimconnDimoComDimConDimData1DimData2DimData3Dimdata4Dimdata5Dimdata6Dimdata7data7=HMIRuntime.tags("編號").readCon="Provider=SQLOLEDB.1;nitialCatalog=讀寫數(shù)據(jù)庫;DataSource=panzhiyou;uid=sa;pwd=panzhiyou"Setconn=CreateObject("ADODB.Connection")conn.ConnectionString=Conconn.CursorLocation=3conn.OpensSql="SELECT*FROM個人信息WHERE編號='"&data7&"';"SetoRs=CreateObject("ADODB.Recordset")SetoCom=CreateObject("ADODB.Command")SetoCom.ActiveConnection=connoCom.CommandType=1oCom.CommandText=sSqlSetoRs=oCom.Execute'SetoRs=Nothingdata4=oRs.Fields(0).Valuedata5=oRs.Fields(1).Valuedata6=oRs.Fields(2).Value'data1.writedata4Setdata1=HMIRuntime.Tags("編號")Setdata2=HMIRuntime.Tags("姓名")Setdata3=HMIRuntime.Tags("年齡")data1.Readdata1.Writedata4data2.Readdata2.Writedata5data3.Readdata3.Writedata6SetoRs=Nothingconn.CloseSetconn=Nothing讀取數(shù)據(jù)時,按照編號讀取數(shù)據(jù),在實際中需要修改數(shù)據(jù)庫語言。運行wincc,再編號輸入輸出域中輸入編號,點擊讀數(shù)據(jù)按鈕,得到需要的數(shù)據(jù)210216連退檢查臺wincc畫面顯示鋼卷信息的程序:前提條件:需要翻開SQL2005添加SQL2000的服務(wù)器添加情況如圖:注:Authentication選項是選擇驗證模式的。和配置的服務(wù)器有關(guān)系。一般有兩種驗證模式?,F(xiàn)場的SQL2000的服務(wù)器都是以上圖示的驗證方式。用戶名sa,密碼123。而WINCC的SQL2005服務(wù)器都是另一種身份驗證。不需要寫用戶名和密碼。在畫面上添加一個listview控件,對象名稱改為listview1;設(shè)置其屬性,代碼可以,直接設(shè)置也可以。此例子為直接設(shè)置。設(shè)置的內(nèi)容包括:view屬性設(shè)為3ColumnHeaders屬性添加顯示的列名字,設(shè)置列的寬度。注意列的個數(shù)要和你程序里想顯示的每一項的數(shù)據(jù)個數(shù)一致。而且列名也要和每一項的數(shù)據(jù)顯示一致。此程序列名有:序號,上卷鋼卷號,鋼帶厚度,鋼帶寬度,焊縫距離。對應(yīng)的數(shù)據(jù)庫是:TuiHuo表是:上卷鋼卷信息表。其余的listview屬性的改變可視具體情況進(jìn)展修改。對應(yīng)代碼:SubOnClick(ByValItem)DimsPro,sDsn,sSer,sCon,sSql,oRS,conn,oCom,oItem,m,n,s,i,oListsPro="Provider=SQLOLEDB;"sDsn="InitialCatalog=TuiHuo;"sSer="DataSource=ZHAOLINA;uid=sa;pwd=123;"sCon=sPro+sDsn+sSersSql="SELECT*FROM上卷鋼卷信息表"Setconn=CreateObject("ADODB.Connection")conn.ConnectionString=sConconn.CursorLocation=3conn.OpenSetoRs=CreateObject("ADODB.Record")SetoCom=CreateObject("ADODB.Command")oCom.CommandType=1SetoCom.ActiveConnection=connoCom.CommandText=sSqlSetoRs=oCom.Executen=oRs.RecordCount'MsgBox(n)SetoList=ScreenItems("listview1")oList.ListItems.Clear'oList.View=3'oList.GridLines=True'olist.ColumnHeaders.Clear'olist.ColumnHeaders.Add,,CStr(oRs.Fields(0).Name),100'olist.ColumnHeaders.Add,,CStr(oRs.Fields(1).Name),150 'olist.ColumnHeaders.Add,,CStr(oRs.Fields(9).Name),100 'olist.ColumnHeaders.Add,,CStr(oRs.Fields(10).Name),100'olist.ColumnHeaders.Add,,CStr(oRs.Fields(11).Name),100If(n>0)ThenoRs.MoveFirstEndIfm=0DoWhileNotoRs.EOFm=m+1SetoItem=oList.ListItems.Add()oItem.text=CStr(oRs.Fields(0).value)

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論