1、力控关系数据库帮助文档把力控的历史数据保存到ACCESS中并做查询的详细使用帮助文档一、 建立数据表模版1、建立“数据表绑定”力控的开发系统下,“工程项目”的导航栏中,在“数据表管理”下建立一个绑定的数据表,这个数据表的功能是把力控中的变量跟关系数据库中的表格模版进行绑定,如下图所示:参数类型:使用变量的类型,注意这里的时间变量最好使用“字符型”变量名在变量名的空白处双击, 则弹出力控的变量选择框, 您可以选择所需要的变量。如上 图中,带有“ $”的变量,是系统自带的中间变量,读取系统的当前时间。2、建立“ SQL数据表模版”双击“ SQL数据表模版”则弹出如下的对话框,按照“数据表绑定”的表
2、格形式,建立与绑定表相对应的模版表。注:字段名和参数类型必须完全一样,一一对应!在D盘下建立关系数据库在D盘下的新建一个文件夹 “关系数据库”,在此文件夹中右键, 新建一个ACCESS关系数据库,命名为:配方在力控通过程序使之数据保存到关系数据库中1、首先介绍对于跟关系数据库链接应该使用到的函数:(1 )、连接SQLCo nn ect( Co nn ectIDQataSourceDesc)说明连接到指定的数据库 参数ConnectID 整型,数据源标识,为返回值,该值将用于其它 SQL 函数。DataSourceDesc 字符串,数据源描述。数据源描述可以通过 数据源 按钮得到。返回值:0 成
3、功, -1 失败备注数据源使用完后,使用 SQLDisconnect 来断开连接示例SQLConnect(ConnectID,DSN=MS Access 97Database;DBQ=c:FCSqlTEST1.mdb;DefaultDir=c:FCSqltest;DriverId=25;FIL=MSAccess;MaxBufferSize=512;PageTimeout=5;UID=admin;);第二个参数可以通过点击 SQL 连接来选择。(2 )、创建SQLCreateT able(ConnectID, DataTableName, TableTemplateName)说明使用表格模板在数
4、据库中创建数据表参数ConnectID 数据源标识,由 SQLConnect 调用返回。DataTableName 字符串,新建的数据表名称。TableTemplateName 字符串,使用的数据表模板名称。数据表模板规 定了数据表中各字段名称及属性。返回值:0 成功, -1 失败备注示例SQLCreateT able(ConnectID,TAB1, A);参数 ConnectID 由 SQLConnect 调用得到。数据表名为 TAB1数据表模板为 A ,数据表模板 A 必须在 SQL 管理器中事先建立。 (3 )、插入SQLInsert(ConnectID, DataTableName,
5、BindT ableName) 说明使用捆绑数据表中指定的变量的当前值在数据表中插入一个新记录。 参数ConnectID 数据源标识,由 SQLConnect 调用返回。DataTableName 字符串,数据表名称。BindTableName 字符串,使用的捆绑表名称。返回值:0 成功, -1 失败备注捆绑数据表定义了 DRAW 变量和数据库表中的字段间的对应关系。 示例SQLInsert(ConnectID,Tab1, A);参数 ConnectID 由 SQLConnect 调用得到。数据表名为 TAB1 。数据捆绑表为 A , 捆绑表 A 必须在 SQL 管理器中事先建立。(4 )、查
6、询SQLSelect(ConnectID,DataTableName, WhereExpr)说明在数据库中选择符合条件的记录,该函数返回一数据集,可以使用如下函数 SQLFirst() , SQLLast() ,SQLNext() , SQLPrev() 遍历该数据集中的记录。参数ConnectID 数据源标识,由 SQLConnect 调用返回。DataTableName 字符串,数据表名称。WhereExpr 字符串,选择表达式,只有符合该条件的记录被选中。也可以直接使用排序 语句返回值:0 成功, -1 失败示例1)SQLSelect(ConnectID,Tab1,);参数Connect
7、ID 由SQLConnect 调用得到。数据表名为Tab1。条件为空表示选择所有记录。2)SQLSelect (C onn ectlD,Tab1,A = 50);只选择字段A等于50的记录。3)SQLSelect(Co nn ectID,Tab1 ,A 50 ORDER BY A DESC);选择字段A大于50的记录,并以降序排序。2、如何写程序如下图所示,在“动作”一一“应用程序动作”中,在“进入程序”中写入: SQLConnect和SQLCreateTable 这两个函数话空迪卡1咼谢J: 哺冃 顶R冗工(MM)(1 )、在使用 SQLConnect( ConnectIDQataSourc
8、eDesc) 中,需要填连个参数项,分别为id号和数据源描述,其中的id号可以定义为整型的中间变量, 数据源描述需要点击脚本编辑器中的小绿地球,来实现其描述功能。具体使用方法如下:鼠标的光标放到id后面逗号与后括号之间,然后点击小绿地球,弹出如下对话框:IFFSMSSFSFBS:,;T “*N” T* *.Ti r IS点击“新建”的按钮,弹出如下的对话框:创建新数据薄选聲您想为耳安釀数菇頑的亜动程序Driver da licrosoft pa机 arqiiiYOE txto (电D匚Ixg匚de Mi.yrosoftAccess 邑皿 db Jdiedodoy ar% aMi erosoft
9、Mi 列理Mi erosoftMi erase f tC*.dbf) EkccI g kIs) Fardo需(*. dt )Mij-?5ot Visual FoxProtcress Driver 0, ndb) 肚f曲厂(忆ndb】 Driver (*. dbQ VFP Driver 侏,dbfj 川 1高圾|下一步计取消选择:Driver do Microsoft Access(*.mdb),然后点击“下一步”粵羅器鬣霭霧壽瀧譬更名称,或单击上一歩创下-专収 习 呼点击浏览的按钮,找到 D盘下的“关系数据库”文件夹,然后在“保存类型”处选择“所有文件”,则能显示“配方.mdb选择配方.mdb
10、 ”点击保存,弹出如下对话框:按照提示,点击下一步操作,直至弹出如下对话框:点击选择”的按钮,然后选择配方.mdb ”的数据库名。确认后,返回。在“Select DataSource ”中的Look in ”中,找到 D盘下的关系数据库”,有一个绿色地球的配方.mdb.ds n ”,点击选中后,点击确认”按钮,进入下一步设置。如下图画红圈的所示,说明已经创建成功:点击“确认”,看脚本编辑器中,路径已经生成:負为冲彌:莊 -n| x丈斗新涓玄首兀)鸟曲x鼻屯乜吟卩淨弹二三圧 13己叱 “ a gl艸 理埸:|: 觌卜r X衆触或 亠罰配万-也璧血药-也丰帝帝空卄4 Lnvr*iit*FQ1.Id
11、pE*SKJETT-i-itaTahla*5QUkJtft*QLDl:CDCl.Eet*11311 flav 舗LDiuLgTa牝 id4国亠吋*” 凯 UiixuM 4 41/ii 7l 礁 Urt*5QLTrisrL*SQELfiit*QLUsstlrrar*EHLMemM 頤 Uy:送h程序逞字运订周曲扶汀迟二冷茂SQLCcnneci (idf SBQ=D: 走雅敎惟库flfi方.mdb; F efau 1 IDir =E:MSQL. t (. CduaetlD, =dH ese) a|本条脚本结束后,用号结束,换行编辑“创建表格”的函数文斗昴祷叩空百昭Hi x * A TP 草事二 2
12、.2, E, 力 I U, Cl 34asffiJJ可Ty p i兰i at扎程j? |程字运疔朋执荷I退出餅I SQLC:nne; t (i dDEQ二D: 、关話奴抑屮八配SQT CivarpTritn ?(!, zsnrivi Av TrcvLder TreviderDml包 Mining Servicfts Ind.txlng StririeeTnt电rn电t Fubliahing ODBC DriversOLAF Strvicis 3. 0 OracleSQL ServerMicrosoft iMicrosoft IMicrosoft IMicroscfi lMiersaft IMi
13、crosoft IMicroEcft INicrfiSoft iNSL at aShapeOLE PjtiVi ftr M 1 Sflft liir ectory C45点击“连接”项,点击红圈的那个按钮,选择“配方.mdb ”这个数据库文件。-J提從程庠阵番毎了所有指定下列設直以匡按到2注梨瑶:1迄挥或畅入魏皓阵名肺皿:谱择AccPff数凰阳查找范围矣面我的电剧网上邻居文并若(M).配 7: . mdb文件粪型Ricronft Acceis 数强库 C*- mdb取消点击“打开”,然后点击“确认”数据源路径已经自动生成,我们要做的工作是给“数据源名称”那里定义一个名称,可以自己任意定义,例如
14、,我定义为:datasouce点击“确认”然后选择“数据源名称”,点击“下一步选择sun way 表明,则如下图:点击“下一步”,直至完成,都按默认设置即可。保存设置,退出报表向导。开发环境下,在界面上引出: a2.pv和a3.pv。做一个“写入”按钮,每次点击“写入”按钮时,把数据写入到关系数据中,并在专家报表中显示出来。我们在“写入”按钮的“左键”脚本动作中写入如下语句:eRcnp AJjii隔亡ICdlor 血rC640d1ty tCdor卩字 车二二- id jJ C ll 1 ca 2a下讹标麻质苦着周碱订程瓏具按SQLIossrtdd bind)SQlelect (ld fiunwajr . i#Krp r t. SqLQuer y (jj L)_/ffirport. SqLQusriyEx (-1, *s- 1 rr 七刁期,村阖配方 d,配方 4 frcrn she 聞 如果不悝那出“莒询 M対遥幅则用疣暉过的脚味J rtTwr如果使用上图中的脚本, 每次查询出来,会有一个弹出框,点击选择查询方式。如果是自动写入关系数据并显示的功能, 可以用上图中绿色注释掉的脚本, 不用#Reprot.SqlQuery(0,0) 这条脚本就行了。运行成功显示!