欢迎来到易发表网,期刊咨询:400-808-1701 订阅咨询:400-808-1721

关于我们 期刊咨询 科普杂志

数据库管理论文优选九篇

时间:2023-03-20 16:23:24

引言:易发表网凭借丰富的文秘实践,为您精心挑选了九篇数据库管理论文范例。如需获取更多原创内容,可随时联系我们的客服老师。

数据库管理论文

第1篇

1.引言:目前动态网站设计技术主要有:利用Perl/C++/Delphi等开发的CGI,两种有名的API-ISAPI/NSAPI,还有ColdFusion,以及最近几年流行起来的3p技术-ASP,PHP,JSP(据Internet上有关网站统计约有近百种);ASP-AtiveServerPage,由微软公司开发,是一个WEB服务器端的开发环境,主要采用脚本语言VBScript(或javascript/perl等)作为自己的开发语言,可用ODBC或直接驱动法访问Window平台的数据库。PHP-PersonServerPage,是由Rasmus个人创立的一种跨平台的服务器端的嵌入式脚本语言.它大量地借用C,Java和Perl语言的语法,并耦合PHP自己的特性,.是一种很有个性的网站开发语言,它支持目前绝大多数数据库。JSP-JavaServerPage,是Sun公司推出的新一代站点开发语言,Sun公司除Java应用程序和JavaApplet之外,又创立了JSP,其可以在Serverlet和JavaBean的支持下,完成功能强大的站点程序开发,特别是有许多访问数据库的方法。在电子商务平台设计中,主要需要解决"网站结构的设计","注册界面","交易界面","后台数据库",以及"配套模块"诸如购物/用户/论坛/反馈/搜索/会话等设计;考虑篇幅,本文只给出统一的前台界面及后台数据库的3p设计方法;可以说ASP,PHP,JSP与网络数据库的操作是电子商务网站平台设计的坚强基石。

2.构建三种设计技术的运行环境

2.1构建ASP的运行环境:NT5.0Server,IIS5.0,ASP3.0。安装Windows2000Server(NT5.0Server)时选择IIS5.0有关选项。安装完后ASP3.0便内嵌于IIS5.0中。测试ASP:启动浏览器,在地址栏处输入127.0.0.1:80/default.asp,若浏览到IIS服务器的ASP欢迎页面,说明安装成功

2.2构建PHP4的运行环境:NT5.0Server,Apache1.3.12php4.0安装支持PHP的web服务器Apache1.3.12,将Apache服务器压缩文件解压缩,根据提示进行整个安装过程,自己选择安装到目录d:\apache下。安装PHP4,将PHP4压缩文件解压缩到d:\php4即可,同时将其中的php.ini-dist文件拷贝到winnt目录中,将文件更名为php.ini,打开该文件将其中extension_dir设置为:d:/php4,并加载扩展模块:将文件中含有;extention=*.dll的各项前面的";"号去掉即可;修改设置Aphache服务器,用文本编辑器编辑目录d:\aphache目录下的子目录conf下名为httpd.conf的文本文件,首先将"#ServerName*"这一行下加入"ServerName127.0.0.1/",其次将"Port80"改为"Port81(或其他与IIS5.0不冲突的端口)",再其次设置更改Apache虚拟目录,将"Documentroot"d:/Apache/htdocs""改为Documentroot"d:/trade"(该目录即是电子商务网站目录,可用任意方法建立目录trade),最后加入支持php4的如下语句:ScriptAlias/php4/"d:/php4/"AddTypeapplication/x-httpd-php.phpAddTypeapplication/x-httpd-php.phtmlActionapplication/x-httpd-php4"/php4/php.exe";测试php:完成上述步骤后,在d:\trade目录下,用如何文本编辑器,生成扩展名为.php(或phtml)的文件test.php,在文件中输入如下php代码,存盘后,启动Apache,接着你在浏览器中输入:127.0.0.1:81/test.php,若看到php的版本和扩展模块等信息,说明环境安装设置成功。

2.3构建JSP的运行环境:NT5.0Server,Resin1.13,jdk1.3安装Java编译器jdk1.3:运行jdk1_3-win.exe,按照提示完成安装即可,将其安装在d:\java1.3目录,也可安装在其他目录。设置系统环境参数:控制面板/系统/环境页中选择path参数加入d:\jdk1.3\bin;增加新的环境参数classpath=d:\jdk1.3\lib\tools.jar;d:\jdk1.3\lib\dt.jar;,然后重新启动计算机即可安装支持JSP的web服务器Resin1.1.3,将RESIN-1.1.3.zip释放为d:\Resin1.1.3即可。配置服务器端口,打开d:/resin1.1.3/conf/目录下的resin.conf文件在

8080

标签处将端口设置为82(在我的NT5.0上装有三个服务器,这样三个服务器的端口分别为IIS:80;Apache:81;Resin:82其实也可设置为其他互不冲突的端口号).测试JSP:启动Resin服务器,启动浏览器,在地址栏处输入127.0.0.1:82/,若浏览到Resin服务器的JSP欢迎页面,说明安装成功

3生成三种格式的动态表单页面为了通用,这里采用可能用到的表单对象为例,至于下面设计具体数据表用到的字段,只要转成给出的表单域相应对象即可.

3.1用ASP动态生成与数据库进行数据交流的操作表单:form.asp:生成表单域头:生成普通文本:生成密码文本:生成滚动文本:生成单选:生成复选:生成列表框:生成提交按钮生成重填按钮生成表单域尾

3.2用PHP动态生成与数据库进行数据交流的操作表单:form.php生成表单域头:"?>生成普通文本:"?>生成密码文本:"?>生成滚动文本:"?>生成单选:"?>生成复选:"?>生成列表框:网络数据库Asp技术Php技术Jsp技术网站设计"?>生成提交按钮"?>生成重填按钮"?>生成表单域尾"?>

3.3用JSP动态生成与数据库进行数据交流的操作表单form.jsp生成表单域头:生成普通文本:生成密码文本:生成滚动文本:生成单选:生成复选:生成列表框:生成提交按钮生成重填按钮生成表单域尾

4设计用于存储商务网站交互数据的MySql数据库

4.1启动MySql数据库服务器(MySql的安装及ODBC驱动程序的安装与设置请参阅相关书籍)可在NT5.0下用启动服务法/NET命令法/命令窗口键入MySqld-shareware法,启动MySql数据库服务器,启动数据库服务器后,在d:\mysql\bin>提示符下键入mysql-h127.0.0.1-uroot即可出现mysql>提示符,从这开始即可进行对MySql数据库的各种操作。若要退出可键入quit/exit,若要关闭数据库服务器,可在d:\mysql\bin>提示符下键mysqladmin-urootshutdown4.2建立MySql数据库在MySql数据库的提示符mysql>键入Createdatabasetradedb;(或go)

4.2.建立MySql数据库表这里以商务网站中常用的几种数据表为例,主要用到的数据表和生成数据表的SQL代码如下:(这里的数据表字段只要分别对应上述表单域对象即可实际操作,数据表统一用tablename表示)客户登录管理数据表CREATETABLEusers(IDintnotnullauto_increment,UserNamevarchar(30)notnull,Passwordvarchar(20)notnull)客户信息数据表CREATETABLEusermessage(UserNamevarchar(30)notnull,Emailvarchar(80)notnull,Addressvarchar(120)notnull,Faxvarchar(40)null,Phonevarchar(40)notnull,Cerreycardvarchar(50)notnull)客户定购商品数据表CREATETABLEcatalog(ProductIdintnotnull,Namevarchar(64)notnull,Pricefloat(6,2)notnull,Descriptiontextnull)

5设计处理表单数据的3p程序

5.1设计处理表单数据的ASP程序form_cl.asp建立与数据库的连接:这里采用直接驱动法Setconn=Server.CreateObject("ADODB.Connection");conn.open"driver={MySQL};server=localhost;uid=user;pwd=xxxxxx;database=tradedb"获取表单提交的数据:data1=request("ptwbk");data2=request("mmwbk");data3=request("gdwbk")data4=request("dxk");data5=request("fxk");data6=request("lbk")用SQL语句对数据库进行操作查询数据记录:sql="select*fromtablename";setrs=conn.execute(sql)"增加数据记录:sql="insertintotablename(ptwbk,mmwbk,gdwbk,dxk,fxk,lbk)values(''''data1'''',''''data2'''',''''data3'''',''''data4'''',''''data5'''',''''data5'''')";setrs=conn.execute(sql)更改某条数据记录:sql="updatetablenamesetdata1="request(ptwbk)",whereID="num";setrs=conn.execute(sql)删除某条数据记录:sql="deletefromtablenamewhereID="num";setrs=conn.execute(sql)将SQL语句处理的数据结果输出Response.Write"

"Response.Write""Fori=0tors.Fields.Count-1Response.WRITE""&rs.Fields(i).Name&""NextResponse.Write"

"WhileNotrs.EOFResponse.Write""Fori=0tors.Fields.Count-1Response.WRITE""&rs.Fields(i).Value&""NextResponse.Write"

"rs.MoveNextWendResponse.Write"

"关闭数据库:rs.close;conn.Close

5.2设计处理表单数据的PHP程序form_cl.php建立与数据库的连接:这里采用PHP的MySql函数法(也可用ODBC函数法)$conn=odbc_connect("localhost","user","xxxxxx");选择数据库:mysql_select_db("tradedb","$conn");获去表单提交的数据:$data1=$ptwbk;$data2=$mmwbk;$data3=$gdwbk;$data4=$dxk;$data5=$fxk;$data6=$lbk;用SQL语句对数据库进行操作查询数据记录:$sql="select*fromtablename";$result=odbc_do($conn,$sql);增加数据记录:$sql="insertintotablename(ptwbk,mmwbk,gdwbk,dxk,fxk,lbk)values(''''$data1'''',''''$data2'''',''''$data3'''',''''$data4'''',''''$data5'''',''''$data6'''')";$result=odbc_do($conn,$sql);更改某条数据记录:$sql="updatetablenameset$data1=ptwbkwhereID=num"$result=odbc_do($conn,$sql);删除某条数据记录:$sql="deletefromtablenamewhereID=num";$result=odbc_do($conn,$sql);将SQL语句处理的数据结果输出odbc_result_all($result,"border=1");关闭数据库:odbc_close($conn);

5.3设计处理表单数据的JSP程序form_cl.jsp建立与数据库的连接:这里采用JDBC-ODBC桥生成JavaBean法创建一个JavaBean命名为conndb.java,并保存在d:/resin1.1.3/doc/web-inf/classes/trade目录下,代码如下:(限于篇幅这里没按标准书写,而采用不换行写法,其他类同)packagetrade;importjava.sql.*;publicclassconndb{Stringurl="jdbc:inetdae:localhost";Stringlogin="user";Stringpassword="xxxxxx";StringsDBDriver="sun.jdbc.odbc.JdbcOdbcDriver";StringsConnStr="jdbc:odbc:Dsnmysql";Connectionconn=null;ResultSetrs=null;publicconndb(){try{Class.forName(sDBDriver);Connectionconn=DriverManager.getConnection(url,login,password);}catch(java.lang.ClassNotFoundExceptione){System.err.println("conndb():"+e.getMessage());}}Public/ResultSet/executeQuery(String/sql)/{rs=null;try{conn=DriverManager.getConnection(sConnStr);Statementstmt=conn.createStatement();rs=stmt.executeQuery(sql);}catch(SQLExceptionex){System.err.println("aq.executeQuery:"+ex.getMessage());}returnrs;}}然后用javac编译conndb.java生成与其同目录的conndb.class文件,在form_cl.jsp文件中加入如下标签即可建立与数据库的连接获去表单提交的数据:Stringdata1=request.getParameter("ptwbk");Stringdata2=request.getParameter("mmwbk")Stringdata3=request.getParameter("gdwbk")Stringdata4=request.getParameter("dxk")Stringdata5=request.getParameter("fxk")Stringdata5=request.getParameter("lbk")语句对数据库进行操作查询数据记录:Stringsql="select*fromtablename";connbean.executeQuery(sql);增加数据记录:Stringsql="insertintotablenamevalues(''''"+data1+"'''',''''"+data2+"'''',''''"+data3+"'''',''''"+data4+"''''+"'''',''''"+data5+"'''',''''"+data6+''''")";connbean.executeQuery(sql);更改某条数据记录:Stringsql="updatetablenamesetdata1=''''"+ptwbk+"'''',data2=''''"+mmvbk+"'''',data3=''''"+gdwbk+"''''whereID=''''"+num+"''''";connbean.executeQuery(sql)删除某条数据记录:Stringsql="deletefromtablenamewhereID=''''"+num+"''''";connbean.executeQuery(sql);将SQL语句处理的数据结果输出ResultSetrs=connbean.executeQuery(sql);While(rs.next()){out.print("

"+rs.getString("ptwbk")+"

");out.print("

"+rs.getString("mmvbk")+"

");out.print("

"+rs.getString("gdwbk")+"

");out.print("

"+rs.getString("dxk")+"

");out.print("

"+rs.getString("fxk")+"

");out.print("

"+rs.getString("lbk")+"

");}关闭数据库:rs.close();

6三种电子商务网站设计技术综述

6.1主要特性:可见下表设计技术运行平台服务器开发程序扩展组件ASPWindows系列IISVbscript/Jscript/PerlActiveXPHPUnix系列,Novell,WindowsApache等许多服务器phpFunctionJSPUnix系列,Novell,WindowsResin等许多服务器JavaJavaBean

6.2连接数据库的方法:通过上述操作可看出,本文采用了三种操作MySql数据库的方法,Asp采用直接驱动法,Php采用MySql函数法,Jsp采用JDBC-ODBC/JavaBean法

6.3网站结构设计考虑篇幅,本文只给出了Widows平台上,电子商务网站设计中的主要环节的代码设计,对于Linux平台、网站结构、各个功能模块设计等论题,作者已经有两篇这方面的论文在核心刊物上待发表,这里不便公开.

第2篇

本文所说的数据库中,首先是用户数据,而用户数据主要包含的是档案管理部门工作人员的信息,即其用户名与密码。相关工作人员在对文件进行管理前应当先进行身份认证,通过后方可进行操作。为了保证档案管理系统的安全性,在用户正常登录时,session对象中将用一个变量保存对应的用户名,但是非法请求管理页面时,那么对象中的用户名变量为空将页面重定向到登陆页面强制登陆。接着是文件数据,文件数据记录的包括一般属性与几个重要的附加属性。一般属性即是档案的成文时间、收文时间、文件题目、文件字号与类别等,而附加属性包括文件类型,就是标志该档案是以何种方式提交的,图形还是文本,附加属性还有文件状态,即档案是公开还是保密,或是针对哪些级别公开哪些级别保密。一个单位的档案一般都是繁多而复杂的,往往有许多历史类档案,而这些档案如果全部以文本的形式加以呈现,且完全由人工进行管理,那么必将会出现效率低下的问题,同时也很难将档案的价值完全发挥出来,所以我们应当将档案系统与现今科技发展相结合,比如对文件进行扫描,然后将其传入数据库,这样一来又省事又省时。但是与此同时我们不能忽略的另一个重要问题是两种格式的文件如何在一个数据库中进行统一,针对这样的问题,我们可以这样解决,即在文件表中增加一个文件路径,针对图片格式的档案,可以将该档案中的图片文件保存成磁盘文件,接着还需要再创立一个磁盘文件按照顺序记录各个图片的路径,数据库中记录该磁盘文件的路径。而对于文本类的档案,可以将档案的主体内容存入一个磁盘文件中,数据库中记录该文本的路径。

二、档案管理系统的设计档案管理系统

是由不同的动态网页所构成的,而该系统的各项功能也借助动态网页得以实现,档案管理人员、档案使用人员以及档案管理系统和后台数据库之间的交互,从而实现单位管理与文件管理的功能,而档案管理人员可以在经过身份验证后对这些档案进行管理。对档案进行的管理包括对档案的添加修改以及删除。其中添加页面与修改页面比较相似,但是修改页面上的控件已经有了初始值,而添加页面中的数据控件默认是空值,所以添加、修改页面可以在同一个页面中得以实现,在引用比较具体的页面时的区分方式是利用URL后的查询字符串。在对这些档案数据进行操作管理时,也有需要注意的地方,比如在页面提交前应当首先进行客户端的验证,从而保证提交数据的完整性与准确性,其次为了避免重复记录在数据提交到服务器后还要进行服务器端的验证。在对数据库中的图形文件进行处理时也有许多应当注意的问题,首先是图形文件的修改,这是文件管理中一个比较难操作的模块,在对图形文件进行修改时,我们一定会重新上传图片,与此同时也要显示出原来的图片,但是此时图片的大小与数量尚未确定,可能会是档案管理系统的页面出现排序混乱的现象,所以该档案管理系统中只有删除图形文件的功能,没有修改图片的功能。而添加图形文件时也有其比较特殊的部分,即我们无法确定这个文件中具体的图片数量,即页面中无法固定文件上传控件的数量,此时我们可以在进入添加图形文件页面前先向服务器提交一个数据表明这个文件包括多少图片,而后服务器根据这个数据去生成相应数量的文件上传控件,对于文件上传我们可以利用程序从提交的数据中分离出图片信息,或者是使用特定的文件上传组。与此同时还有客户端的验证问题,针对这种问题我们也有相应的解决方案,那就是利用服务器端脚本去生成客户端脚本。在对该系统进行开发时,我们可以利用MicrosoftVisualInterDev作为系统的开发工具。该工具可以对某些对象的属性方法进行自动处理,提高了拼写的准确率与编程速度。同时这个工具还能够将档案中的某些关键词句进行蓝色加粗显示,极大地方便了我们的阅读。在系统完成后,必须应经过相应的测试,模拟实际工作进行测试,保证无问题后可投入运行。

三、档案管理系统更新的意义

第3篇

一、开放数据库连接

ODBC(OpenDataBaseConnectivity,开放数据库连接)是微软开放服务结构中有关数据库的一个组成部分。它建立了一组规范,并提供了一组应用程序调用接口。用这样一组接口建立的应用程序,对数据库的操作不依赖于任何数据库管理系统,不直接与任何DBMS打交道,由此可实现应用程序对不同DBMS的共享。数据库操作的“数据源”对应用程序是透明的,所有的数据库操作由对应DBMS的ODBC驱动程序(ODBCDriver)完成。有了ODBC驱动程序,数据源就变得十分广泛,它可以是本机的某种数据库格式的文件(如本机DOS目录下的Access文

件*.mdb),也可以是远程数据库文件(如MicrosoftSQLServer);它可以是目前已知的某种DBMS格式,也可以是一种全新的数据库格式。总之,它取决于提供了什么数据库类型的驱动程序。

VisualC++中的ODBC主要是实现基于Windows的关系数据库的应用的共享。

二、ODBC管理器

在ODBC中,数据源是一个重要的概念,它是数据库位置和数据库类型等连接信息的总和。数据源在使用前必须通过ODBC管理器(Administrator)进行登录。在登录数据源时,要搞清数据源名(Datasourcename)、数据库文件名(Databasename)和数据表格名(Tablename)这三者的概念和相互关系:数据源实际是一种数据连接的抽象,数据源名是登录时赋予的“连接”的名称,以供应用程序使用,至于该数据源下连接的是哪一个数据库,则由数据库文件名指出(如Access2.0forMSOffics中的.mdb文件);一个数据库文件中可以包括若干个数据表格(table)和其他内容。在关系@@09A05900.GIF;图1ODBC层次关系图数据库中,数据是以二维表格的方式存在于数据库@@文件中,应用程序最终的操作目标即是这些表格中的行(row记录)和列(columns字段)数据。对于foxprow数据源,数据库文件名是“路径名”,而该路径下的所有数据文件(*.dbf)都属于该“数据库文件”名下的数据表格(table)。

ODBC管理器被装在ControlPanel里(ODBCINST.CPL)。通过该工具可以增添、修改或删除数据源,也用来增添、删除ODBC驱动程序,ODBC管理器把数据源和它们的连接信息保存在ODBC.INI、ODBCINST.INI和ODBCISAM.INI中。当需要共享应用程序时,只需按新的数据文件的类型和位置重新登录即可。

三、ODBC应用程序接口

ODBCAPI是一组标准的ODBC函数库,除了一般的数据库操作函数外,还包括一组函数(如SQLExec或SQLExecdirect)能够内嵌标准SQL查询语句。SQL(StructuredQueryLanguage结构化查询语言)是一种存取关系型数据库的标准语言,能够定义、查询、修改和控制数据,简单的语句能够作用于整个数据表格,具有很强的功能。

同Windows3.1SDK中API类似,ODBCAPI也是基于句柄(handle)进行操作的。API函数按功能可分为以下几类:

·数据源连接函数,设置/获取有关信息的函数;

·准备/提交执行SQL查询语句的函数和获得数据的函数;

·终止函数和异常处理函数。

上述函数的顺序也表示了进行数据库操作的一般顺序。两个问题需要特别说明,一是数据类型问题:数据源中的数据所具有的数据类型称为SQL数据类型,这些数据类型在其数据源中可能比较特殊,不一定和ODBCSQL数据类型存储方式一致,驱动程序把这些数据类型同ODBCSQL数据类型进行相互转换,每一个ODBCSQL数据类型都相当于一个ODBCC语言数据类型;二是函数的调用级别问题,并不是每一个ODBC驱动程序都支持所有的ODBCAPI函数调用,在应用程序中,可以调用有关函数获取驱动程序以支持层次方面的信息。

四、ODBC应用编程

在VisualC++中,MFC(MicrosoftFoundationClass基本类库)是经过对Windows应用程序中各个部件进行类的抽象而建立的一组预定义的类,如窗口基类(CWnd)、各种窗口派生类等等,这些类在应用程序中可直接使用,不需要重新定义。在MFC中,也为ODBC预定义了几个类,其中主要的是数据库类(CDatabase)和记录集合类(CRecoredset)。这两个类既有联系又有区别,在应用程序中,可以分别使用,也可以同时使用,每一类也可以同时存在多个对象。CDatabase的每一个对象代表了一个数据源的连接,CRecordset的每一个对象代表了从一

个数据表中按预定的查询条件获得的记录的集合,一般说来,前者适宜于对数据源下的某个数据表格进行整体操作,后者用于对所选的记录集合进行处理。

同Windows类与SDKAPI函数的关系一样,CDatabase类与ODBCAPI函数也有类似的关系,但CDatabase类中并不包含所有的ODBCAPI函数,大部分操作功能仍须直接调用ODBCAPI函数,如目录功能函数,用于获得数据源下的数据表格信息,如表格名,字段名等。

在应用编程时,一般使用CDatabase和CRecordset的派生类。假设派生类分别为CUserdb和CUserset,而在应用类CUserClass中,使用了一个CUserdb对象(m-db)和一个Cuserset对象(m-recset),图2给出了用户应用类与ODBC类的相互关系示意图。

@@09A05901.GIF;图2CDatabaseCRecordset类与应用类及数据源关系图@@

1.m-db连接数据源

m-db在完成定义构造后,要调用CDatabase的打开(Open)函数以进行数据源的实际连接:

m-db.Open(lpszDSN,bExclusive,bReadOnly,lpszConnect);

打开函数需要输入四个参数。lpszDSN:要连接的数据源的名字,如果lpszDSN=NULL且lpszConnect中也没有指明数据源名,则该调用会自动出现一个对话框列出所有可用的数据源(名),让用户选择。bExclusive:只支持“假”(False)值,表示为共享(share)方式连接。因此,应用程序在运行前,一定要装入share.exe或在Windows的system.ini中装入vshare.386。ReadOnly:指明数据源操作方式是“只读”还是可以修改。lpszConnect:指明连接字符串,包括数据源名、用户标识码、口令等信息。该字符串必须以“ODBC;”开头,表示该连接是与一个ODBC数据源的连接(考虑以后版本支持非ODBC数据源)。

m-db打开后,其指针可以传给m-recset作为其数据源。m-db关闭后,将关闭所有CRecordset对它的连接,m-db也可以重新打开。

2.m-db操作数据

数据源打开后,即可对数据库文件中的数据表格进行操作,操作以调用SQL语句方式进行,可直接通过ODBCAPI函数,或者CDatabase类成员函数ExecuteSQL。数据表名在SQL语句中指定,如下语句则在所在的数据源中的clerk表中插入一个记录,记录的name字段值为"chen"。

m-db.ExecuteSQL("insertintoclerk(name)value(’chen’)");3.m-recset连接数据m-recset在构造时,可传入一个CDatabase对象指针,作为m-recset的数据源,当为NULL时,必须重载CRecordset的函数GetDefaultConnect,以提供数据源连接字符串(相当于m-db.Open中的lpszConnect)。如下则表示连接名为COMPANY的数据源(当传入了合法的CDatabase对象指针时,该函数将不被调用)。

CStringCUserset::GetDefaultConnect()

{

return"ODBC;DSN=COMPANY;";

}4.m-recset选取记录和字段

m-recset在调用打开函数时,即获得了符合条件的一组记录,条件语句在Open函数中的lpszSQL中给出,如果lpszSQL为NULL,则必须重载CRecordset的函数以提供该语句。该语句是一个SELECT语句,带或不带where和orderby子句(如果不带,where和Orderby的条件也可在CRecordset的两个预定义成员变量m-strFilter和m-strSort中给出)。lpszSQL也可以只是一个数据表名(table-name),也可以是对内嵌在数据库文件中的查询程序的调用语句。所选择的一系列字段名,在成员函数DoFieldExchange中由一系列RFX-函数指定。RFX-(RecordFieldExchange)函数,使字段和成员变量一一建立类型对应关系。另外,m-strFilter中也可以带变量参数(用"?"表示,如"fieldl>=?ANDfield2<=?"),参数与成员变量的对应关系也在DoFieldExchange中由RFX-函数指定(串中的"?"将被参数变量值逐一替换)。

voidCUserset::DoFieldExchange(CFieldExchange*pFX)

{

pFX->SetFieldType(CFieldExchange::outputColumn);

/*以下为字段连接*/

RFX-???(pFX,"field1",m-var1);

RFX-???(pFX,"field2",m-var2);

...

RFX-???(pFX,"fieldn",m-varn);

pFX->SetFieldType(CFieldExchange::param);

/*以下为参数连接*/

RFX-???(pFX,field1,m-param1);

RFX-???(pFX,field2,m-param2);

...

}其中,???为ODBCSQL数据类型名,如RFX-Double,RFX-Text等。

综合上述,选取记录和字段实际是由下列语句完成:

SELECTrfx-field-listFROMtable-name[WHEREm-strFilter][ORDERBYm-strSort]

字段变量和参数变量的个数一定要在调用打开函数前(如构造函数中)准确地赋值给成员变量m-nFields和m-nParams。m-recset在打开后的任何时候调用Requery()函数,将根据新的查询条件(例如修改了参数变量值)重新选取记录。

5.m-recset操作数据

记录集合生成后,其当前记录的各字段值被保存在前述的各字段变量中,如果调用CRecordset的滚动(scroll)函数,如MoveFirst(),MoveNext(),MovePrev(),MoveLast()等,字段变量的值将自动跟随“当前”记录的位置的变化而变化。IsBOF(),IsEOF()用于判别是否移动到记录的头或尾。

数据操作主要包括删除(Delete),添加(AddNew)和更改(Edit),一般流程为:

if(m-recset.CanUpdate())/*是否允许修改*/

{

if(m-db.CanTransact())/*是否支持“批”处理*/

{

m-db.BeginTrans();

m-recset.AddNew();

/*修改字段变量值*/

...

m-recset.Update();

m-mitTrans();

if(catcherror)

m-db.RollBack();

}

}

对于AddNew和Edit,修改字段变量后一定要调用函数Update(),否则更新将丢失,而Delete操作则不必进行字段值修改和调用Update()。

上述的CDatabase的四个函数是ODBC为保证数据操作的可靠性而提供的“批”处理函数,即在BeginTrans和CommitTrans之间的数据修改如果出现任何异常,可通过函数RoolBack来恢复所做的修改。

在多用户系统使用时,每一个数据源可以被多个用户的多个任务连接,不同的任务可同时修改相同的数据源。ODBC提供了两种数据表更新的同步机制(在m-recset.Open函数中指定),“静态”的(snapshot)和动态的(dynaset)。前者是一组静态的记录集合,当建立后不会改变,除了反应自己的添加/删除外,不反应别的用户的修改,除非调用了Requery重新建立。后者是一组动态的记录集合,自己或别的用户所作的修改随时反应到集合中来(当然也可用Requery重建),以保持记录与数据源的同步。在应用中,应根据需要确定使用哪一种方式。

五、结束语

第4篇

科学技术的进步实现了计算机技术的全面升级,计算机数据库技术能在满足信息统筹管理的基础上,对相关数据进行系统化整合。其一,计算机数据库技术具有组织性特征。在计算机数据处理过程中,由于数据具有一定的连接性特征,因此,要将具有关联结构的数据整合在一起,从而形成统筹化的数据库。主要是借助一种特定的关系进行数据组织以及匹配,确保组织解构特征的实效性,也能强化数据之间的关联维度[1]。其二,计算机数据库技术具有共享性,在数据应用过程中,最重要的就是数据的共享模式,也是建立计算机数据库技术的主要目的,因此,要充分发挥数据的价值,就要结合数据模型和数据共享参数进行系统化处理以及信息管控,确保使用效率的完整度,也为信息利用效率优化奠定坚实基础。

二、计算机数据库在信息管理中的应用现状

就目前技术的发展结构而言,在计算机数据库技术实际运行过程中,整体技术维度和技术运行机制也在发生改变。第一,计算机数据库技术的应用范围在逐渐扩展。在实际生产生活中,应用计算机数据库技术的频率和市场前景越来越大,无论是工业、农业以及文化产业等,都将其视为有效的信息处理工具[2]。因此,计算机数据库技术的安全性和适配性尤为重要,各行业也在自身发展进程中不断摸索和技术优化,真正建立切实有效的管控模型和管理机制,确保管理维度的实效性,也为信息结构优化奠定坚实基础[3]。第二,计算机数据库技术的安全性也在探索中逐渐得到强化,也突显出计算机数据管理项目的具体要求,只有优化其安全价值,才能更好的建构高度机密性以及敏感性数据管理维度,保证了信息备份管理以及恢复功能的有效性,对于数据信息的复制和备份,要在优化信息维度的基础上,真正实现了数据库的安全性升级。

三、计算机数据库技术在信息管理中的应用优化路径

(一)优化计算机数据库技术在信息管理中的安全性

要保证数据完整性,就要从安全应用以及安全管控模型出发,建构系统化管理维度和管控要求,保证数据在得到共享的同时,相应的数据信息也是安全准确的。因此,技术人员要结合计算机数据库技术的相关要求,提升信息完整度和安全性[4]。

(二)优化计算机数据库技术在信息管理中的实践性

在实际信息管理和信息控制过程中,要积极落实理论和实践的融合机制,确保管理维度和管理效果的最优化。伴随着计算机技术的高速发展,将数据库原理和数据库管理技术模型进行深度管控,是提升数据科学性以及合理性的重要路径,也是研究数据分析机制以及计算机数据库技术应用模型的重要参数,因此,要保证理论联系实践,建构计算机数据库技术应用整体。

(三)优化计算机数据库技术在信息管理中的技术性

对于计算机数据库技术来说,最基本的就是技术参数,因此,要保证计算机数据库技术在信息管理中得到推广,最基本的就是要保证技术模型的安全性和准确性,并且积极落实计算机共享体系。计算机数据库技术最根本的要求就是要规避数据库被非法入侵,确保其技术安全和信息共享安全。但是,在实际管理机制中,信息的绝对安全存在风险。提升计算机数据库技术的技术安全性,能更好的落实信息应用价值,确保信息维度得到有效优化。因此,相关项目技术人员要利用加密技术对非共享信息进行系统化管控,提高管控效果的同时,积极落实技术性管理要求,借助权限管理机制、数据加密技术以及强制存取控制技术等措施,进一步优化计算机数据库技术的技术安全性[5]。

四、结束语

总而言之,在信息管理过程中积极应用计算机数据库技术,能在满足共享需求的基础上,充分发挥信息的实用性价值,确保信息得到充分利用,也为实践优化提供动力,确保技术模型以及信息管理维度之间形成有效的控制机制,也为数据应用研究奠定坚实基础,保证计算机数据库技术和信息管理之间的优化契合。

作者:陈文杰 单位:

参考文献:

[1]王瑜.探究计算机数据库安全管理与实现途径[J].建筑工程技术与设计,2016,15(11):2074-2074.

[2]温林芝.试析计算机数据库安全管理技术与方法[J].数字技术与应用,2015,15(04):183-183.

[3]赵宏飞,国静萍.试论计算机数据库的安全防范技术及安全管理[J].数字技术与应用,2014,15(04):190-190.

第5篇

布-加综合征实验室管理系统包括管理系统终端、服务器和无线通信模块。管理系统终端基于智能手机和Android系统实现,可以通过摄像头扫描设备上的二维码,对实验设备进行识别管理。实验室服务器和实验设备通过近距离无线通信模块进行通信,从而服务器可以查询和控制实验设备的工作状态;管理系统终端与安装在实验室服务器上的远距离无线模块之间采取基于TCP/IP的Socket通信方式。系统终端发送的命令经过电信交换网传送到实验室服务器,服务器根据命令并通过近距离无线网络,查询并记录实验设备的状态或控制设备的运行方式,然后给管理系统终端反馈设备的状态信息。系统框图如图1所示。

2实验室管理系统的设计

2.1系统数据库设计应用

SQLServer2000设计数据表[6-7]。系统数据库主要包括3类数据表。(1)设备信息表。记录设备总体信息,包括设备编号、型号、购置人、购置缘由、购置日期、报废日期、借用状态信息。当实验室购买新设备时,通过管理系统终端软件输入的信息发送至服务器软件,经过解析处理后添加到这个表。(2)设备使用状况表。用于记录设备的借用情况,包含编号、借用日期、归还日期、借用人姓名、借用人证件号、借用人电话、用途等字段。在设备借/还的时候,通过管理系统终端记录的信息将添加到此表。(3)设备操作信息表。用于记录设备控制信息,包含编号、操作指令、操作人、操作时间等字段。实验室管理人员通过管理系统终端控制设备的信息将添加到此表。

2.2服务器端设计

系统的服务器分为Web服务器和数据库服务器[8]。Web服务器为此系统增加了以B/S架构为基础的网页管理系统配置访问功能以及WebService接口程序。当管理员通过管理系统终端软件查询数据库时,可以通过WebService接口访问设备使用情况、借记状态、控制状况等数据库信息。基于.NET的数据库查询程序都是用C#语言编写,其特点是执行效率高,安全性好。数据库服务器主要用于接收智能手持端传来的数据,将数据解析后存入系统的数据库表中。可以在服务器软件界面查看历史操作信息和数据库信息。对于需要的信息可以选择导出或打印。

2.3设备信息记录以及追溯

系统使用二维码标签作为实验室设备的标志,二维码的信息包括设备编号、设备型号等[9-10]。当新购入实验设备时,以设备的顺序编号和设备的型号两个信息生成该设备的标志二维码并存入数据库。在设备管理工作中,通过扫描设备二维码就能获取该设备的相关信息并可存入数据表中。当设备出现故障或者其他意外情况时,可以通过扫描设备的二维码调用系统数据库中该设备的所有历史信息,以供追本溯源,快速排除故障或解决问题。

2.4设备远程控制

在布-加综合征实验室,原子吸收分光光度计等一些设备的使用需要提前开启或者延迟关闭,以实现预热、冷却等技术要求。为此,设计了设备远程控制功能,替代了以往实验管理员守候设备等待开关的情况,使实验管理员通过管理系统的移动终端即可远程控制设备。实验管理员将需要的实验设备控制命令发送到实验室内的服务器,服务器通过近距离无线网络向对应的实验设备发送开关机命令。近距离无线网络的无线传输芯片采用nRF24L01,通过SPI与单片机相连,单片机通过串口与服务器或者实验设备相连。当服务器需要向实验设备发送命令时,先通过串口将命令发送给单片机,单片机控制无线芯片通过无线链路,由nRF24L01将命令传送到指定的实验设备,实现设备的开、关或延时开、关。这些操作记录也会存入数据库中以供以后查询。

2.5语音即时通信

在系统中实现了无线环境下零消费的语音通话功能。该通话基于SIP协议,采用Asterisk作为虚拟交换机,只要一网的电脑,结合VOIP技术[11-12],就能架设整个实验室大环境及实验室外无线环境下的通话系统。点击拨号可以是两个客户端之间通话,也可以将座机连接路由器,并且在语音服务器注册一个地址,实现客户端与座机的通话。

3系统实现

布-加综合征实验室管理系统的终端运行于An-droid系统。进入系统后需输入用户名和密码登录。系统主界面共分为6个功能模块,分别是新进设备、设备借用、设备归还、设备信息、工作圈子和设备控制(见图2)。点击“新进设备”按钮,可以对新设备进行添加、登记;点击“设备借用”按钮,可以对设备进行借用登记;点击“设备归还”按钮,可以对设备进行归还登记;点击“设备信息”按钮,可以查询设备信息;点击“工作圈子”按钮,管理员之间、管理员与非管理员之间可以进行语音即时通信;点击“设备控制”按钮,可以进入设备控制界面。在设备控制界面,右上角的“添加设备”按钮用来将设置好的设备编号添加至软件中。选择需要控制的设备名,点击需要的操作命令按钮,即可将操作命令发送至服务器软件。操作命令包括4种简单操作:开启、关闭、延时开启、延时关闭(见图2)。系统实物如图3所示。当服务器接收到命令并解析后,即将操作命令通过串口A发送至单片机B(AT-mega16),单片机B将数据包通过近距离无线模块上的天线C发送给近距离无线模块上的天线D,D由单片机E控制接收信息,E根据命令包参数选择性控制继电器F,通过F来控制设备G(图中用电机演示)的启动与关闭。

4结束语

第6篇

在我院的科研管理过程中,科研处需要了解教师的每个项目.每个项目又包括项目名字、项目经费、项目人员、项目状态等;最特殊之处是本校项目经费编号必须和财务统一,只能按照财务软件默认给出的编号建立数据编号.这样才能核对项目经费、纵向经费等;项目所获得奖励(科技进步奖等)按照科研管理规定给予相应奖励;项目人员的信息和项目的每个内容都相关,这里需要指出的是任何单位都有相同名字的人员,所以每个人员的信息至少要包含一个区别码,可以是身份证,也可以是工作证代码等等.

2数据库结构设计

2.1数据库选择

由于科研管理的保密性,本校科研管理不对校外开放,基本不用考虑并行查询的系统需求,另外,鉴于本系统目标用户普遍应用Windows系统,所以项目采用了WindowsServers系统下的SQLServer,在跨平台操作时,可直接用SQL语言进行数据读写和查询等操作命令.用于数据库中的标准数据查询语言项目在开发过程中得到了验证.

2.2数据库结构设计

数据库的结构设计一定是在项目的最初完成的.构造数据库必须考虑所有需求规则.在关系数据库中,我们习惯称之为范式,参考关系数据库的多种范式,依据科研管理的需求分析,为扩大操作功能和减少冗余度选择了第三范式.科研工作者的信息是贯穿于整个数据库中的,必须单独建立的,同时为了避免多人同名可以采用唯一身份证号码加以区别.其表内信息依据需要建立以下字段:包括年龄、性别、单位院系、职务职称、技术领域、个人信息(电话)等.每个表单都有一个和人员相关的字段,这个字段可以是工作证号,也可以是身份证号码.每个表单都可以单独进行,甚至可以在备份的同时也不影响录入.如果将来需要查询某科研人员的详细成果,只要每个库调用相同工作证号或身份证等就可以.科研经费是每年国家审计管理的重点,每笔经费一定要保证和唯一项目编号准确对应.所以建立经费和经费分配两独立表单.两个单独表中经费都含有项目编号,这个项目编号和项目管理中的项目编号一致.由于项目管理表中有人员信息相连,所以只要通过调出科研经费相关联的项目编号后自动在逻辑层调用项目表和科研工作者库中信息,就可以得到全面的经费信息.而经费分配表中的人员必须符合人员库,这样就杜绝了非项目人员经费报销的可能性,大大降低了查找同一个人员参加的不同项目的经费结果的复杂度.成果管理模块通过建立专门的成果库,成果库可以包括论文、专著、专利、软件著作权等.在设计时同样建立一个单独的表,而成果中也有和经费模块一样的地方,也就是包含项目人员,这样将来查询某人员的时候,项目和成果可以一起得出.

2.3用户接口设计

根据科研管理需求分析,设计为多用户.第一种是数量最多的科研工作者的访问模块,每个科研人员可以利用互联网将在任何地点输入本人的科研信息和成果,这样可以将科研管理人员从大量录入科研工作者的项目成果、专利等繁琐工作中摆脱出来,同时也可以在保密许可范围内查询到自己参加过的所有项目、论文和成果;第二种是科研管理人员的入口(科研处人员),科研管理人员必须通过授权才可以通过接口进入后台.在有记录的情况下,直接管理数据,包括输入到数据库、项目审核、项目修改(教师录入错误等)及删除等.这个入口可看到项目和经费,还可以审批经费等管理功能.超级管理员还可以对科研工作者授权,使之对本人输入数据的错误进行修正.一般来说,科研处的分工有多细,这个入口就有多细.比如项目管理科的人员就只能针对项目管理,项目经费管理科只能针对项目经费管理和项目状态管理等.这样,在管理上的细分导致多用户之间是严格不相关并且不能互相越权管理.

3数据库接口应用

本校科研管理平台用户功能在面板左侧以项目为例:分别为项目录入、项目修改、项目查询和项目分析.

3.1项目录入

该平台突破了传统的手工录入方法,避免了项目数量巨大,录入工期长等问题.最重要的是保证了非手工录入的正确率.创新方法为先在熟悉科研管理方法的基础上提出一个完善的项目资料存档要求,并对每个存档内容给予明确的指示,应包含一个科研项目的所有基本信息.其中项目类型中应包含附加属性,如是否双十项目等;项目状态应添加自动修改的功能,当项目合同时间已到却仍未结题者,项目应变更为延期.当所有功能都已确定完成后,直接由项目负责人提供符合后台数据库格式的excel表格,无论申报还是结题,都由各科研处统一通过审核将各个项目表格汇总,项目录入工作就是直接导入.这样大大避免了手工录入的人为错误.如果有临时的突然增加项目,让项目负责人填好相应表格,直接导入即可.

3.2前台的查询功能

前台应将任意条件如项目名称、项目负责人、工作单位和项目编号等检索,同时应考虑到将来的科研管理需求,如想查询所有结题项目或经费等于4万的项目等其他条件等,这样的检索可以让我们在左边的可选字段中自由搭配,以便于应对不同的科研管理需求.所以平台开发为检索条件完全自由组合。

3.3项目修改

设计了对应不同功能的不同账号,并分别给予不同权限,如普通院系老师给予查询功能,首先通过教师的身份证号或者工资卡号等登陆,教师一旦登陆就相当于默认为查询自己的所有项目.如果是科研处的管理科研工作者登陆,则可以修改和确认.为防止科研处管理科研工作者的人工误差,可以在确认上有两个账号,由领导审核后方可生效.

3.4数据导出

项目查询完毕后,可以导出的EXCEL表格应是前面检索条件下检索结果的表格,要求应包含所有的科研信息.由于现有的数据仓库技术发展,将导出的数据中与现有其他数据来源(如其他大学的科研数据分析图)对比,可根据对比数据修整本校科研发展的方向.

4结语

第7篇

系统采用三层架构,由数据层、业务层和表示层组成,分别负责数据的收集、整理和展示,从而达到在同一系统内管理多台数据库的目的。数据层:充分利用Oracle存储过程,在后成对11台数据库的信息收集工作,充分利用夜间服务器性能空闲时间完成各类信息的采集工作,以减少对服务器负载的影响。业务层:对数据层所提交的基础数据进行分类处理,形成涵盖数据和数据库管理方面的六大功能模块。表示层:根据数据库管理的实际需要以及厂矿两级数据库的不同特点,形成多种类分析报表,为管理员提供高效、准确的数据库管理依据。

二、重点功能分析

2.1重点生产数据加载情况监管。建立重点生产数据加载情况跟踪监管机制。对生产运行、管理决策等方面影响较大的31个数据表确定为重点监测对象,并为其指定明确的责任人,建立持久的“双负责”责任机制。

2.2数据库基本概况及运行状况监控。对所有数据库的管理要点进行集中监管。通过对数据库运行状态、表空间占用情况、参数配置情况和CPU负载情况等重要信息的收集、分析、判定,协助管理员方便快捷的掌控11台数据库的运行状态,及时对影响数据库正常运行的隐患和问题进行处理,使数据库系统处于高效、稳定的良好运行状态。(1)系统可自动收集每台服务器的基本信息,并自动生成服务器概要信息报告,供用户及管理员随时查阅。(2)系统通过“三表一图”的专项检查,即:基本状况检测表、表空间检测表、参数配置检测表、CPU负载检测图等,分析运行状态,把握关键参数。

2.3备份执行情况监控。数据备份任务完成情况监控。根据备份策略所制定的备份周期,对备份执行情况进行检测,异常时红灯亮起预警。数据备份文件增量异常预警。对备份文件的容量实施线性跟踪监控,自动分析变化趋势,变化比率超过士5%后,自动预警。

三、应用效果

《数据资源监控管理平台》是一个集数据与服务器双向管理的网络监管环境,实现了多数据库集成化管理的策略,可大幅提升数据库管理效率,降低人为失误几率,通过“有监测、可预警、设制度、清责任”的数据库管理思路,进一步规范了数据库管理流程,从而确保所有数据库能够安全可靠、持续高效的为全厂各应用系统和广大用户提供高质量的数据服务。本项目已正式部署应用,可同时对11台数据库实施定时、定量的监测预警,进一步规范管理流程、大幅提高工作效率。随着本系统的持续应用,后续管理效果将显著提升,具有良好的应用前景。

四、结论

第8篇

一、成立数据小组

大型数据库数据元素多,在设计上有必要成立专门的数据小组。由于数据库设计者不一定是使用者,对系统设计中的数据元素不可能考虑周全,数据库设计出来后,往往难以找到所需的库表,因此数据小组最好由熟悉业务的项目骨干组成。

数据小组的职能并非是设计数据库,而是通过需求分析,在参考其他相似系统的基础上,提取系统的基本数据元素,担负对数据库的审核。审核内容包括审核新的数据库元素是否完全、能否实现全部业务需求;对旧数据库(如果存在旧系统)的分析及数据转换;数据库设计的审核、控制及必要调整。

二、设计原则

1.规范命名。所有的库名、表名、域名必须遵循统一的命名规则,并进行必要说明,以方便设计、维护、查询。

2.控制字段的引用。在设计时,可以选择适当的数据库设计管理工具,以方便开发人员的分布式设计和数据小组的集中审核管理。采用统一的命名规则,如果设计的字段已经存在,可直接引用;否则,应重新设计。

3.库表重复控制。在设计过程中,如果发现大部分字段都已存在,开发人员应怀疑所设计的库表是否已存在。通过对字段所在库表及相应设计人员的查询,可以确认库表是否确实重复。

4.并发控制。设计中应进行并发控制,即对于同一个库表,在同一时间只有一个人有控制权,其他人只能进行查询。

5.必要的讨论。数据库设计完成后,数据小组应与相关人员进行讨论,通过讨论来熟悉数据库,从而对设计中存在的问题进行控制或从中获取数据库设计的必要信息。

6.数据小组的审核。库表的定版、修改最终都要通过数据小组的审核,以保证符合必要的要求。

7.头文件处理。每次数据修改后,数据小组要对相应的头文件进行修改(可由管理软件自动完成),并通知相关的开发人员,以便进行相应的程序修改。

三、设计技巧

1.分类拆分数据量大的表。对于经常使用的表(如某些参数表或代码对照表),由于其使用频率很高,要尽量减少表中的记录数量。例如,银行的户主账表原来设计成一张表,虽然可以方便程序的设计与维护,但经过分析发现,由于数据量太大,会影响数据的迅速定位。如果将户主账表分别设计为活期户主账、定期户主账及对公户主账等,则可以大大提高查询效率。

2.索引设计。对于大的数据库表,合理的索引能够提高整个数据库的操作效率。在索引设计中,索引字段应挑选重复值较少的字段;在对建有复合索引的字段进行检索时,应注意按照复合索引字段建立的顺序进行。例如,如果对一个5万多条记录的流水表以日期和流水号为序建立复合索引,由于在该表中日期的重复值接近整个表的记录数,用流水号进行查询所用的时间接近3秒;而如果以流水号为索引字段建立索引进行相同的查询,所用时间不到1秒。因此在大型数据库设计中,只有进行合理的索引字段选择,才能有效提高整个数据库的操作效率。

3.数据操作的优化。在大型数据库中,如何提高数据操作效率值得关注。例如,每在数据库流水表中增加一笔业务,就必须从流水控制表中取出流水号,并将其流水号的数值加一。正常情况下,单笔操作的反应速度尚属正常,但当用它进行批量业务处理时,速度会明显减慢。经过分析发现,每次对流水控制表中的流水号数值加一时都要锁定该表,而该表却是整个系统操作的核心,有可能在操作时被其他进程锁定,因而使整个事务操作速度变慢。对这一问题的解决的办法是,根据批量业务的总笔数批量申请流水号,并对流水控制表进行一次更新,即可提高批量业务处理的速度。另一个例子是对插表的优化。对于大批量的业务处理,如果在插入数据库表时用普通的Insert语句,速度会很慢。其原因在于,每次插表都要进行一次I/O操作,花费较长的时间。改进后,可以用Put语句等缓冲区形式等满页后再进行I/O操作,从而提高效率。对大的数据库表进行删除时,一般会直接用Delete语句,这个语句虽然可以进行小表操作,但对大表却会因带来大事务而导致删除速度很慢甚至失败。解决的方法是去掉事务,但更有效的办法是先进行Drop操作再进行重建。

4.数据库参数的调整。数据库参数的调整是一个经验不断积累的过程,应由有经验的系统管理员完成。以Informix数据库为例,记录锁的数目太少会造成锁表的失败;逻辑日志的文件数目太少会造成插入大表失败等,这些问题都应根据实际情况进行必要的调整。

5.必要的工具。在整个数据库的开发与设计过程中,可以先开发一些小的应用工具,如自动生成库表的头文件、插入数据的初始化、数据插入的函数封装、错误跟踪或自动显示等,以此提高数据库的设计与开发效率。

6.避免长事务。对单个大表的删除或插入操作会带来大事务,解决的办法是对参数进行调整,也可以在插入时对文件进行分割。对于一个由一系列小事务顺序操作共同构成的长事务(如银行交易系统的日终交易),可以由一系列操作完成整个事务,但其缺点是有可能因整个事务太大而使不能完成,或者,由于偶然的意外而使事务重做所需的时间太长。较好的解决方法是,把整个事务分解成几个较小的事务,再由应用程序控制整个系统的流程。这样,如果其中某个事务不成功,则只需重做该事务,因而既可节约时间,又可避免长事务。

第9篇

数据仓库的概念最早是由WH.Inmon提出来的,在他的著作《建立数据仓库》中是这样定义的:数据仓库是一个面向主题的、集成的、想对稳定的、随时间变化的数据集合。数据仓库是在传统数据库基础上建立起来的,但是与传统数据库又有所区别,传统的数据库是单一的数据资源,即以数据库为中心,进行联机事务处理(OLTP,ONLineTransactionProcessing),数据库技术的主要任务存储数据,对存储的数据进行查询和修改等操作。而数据仓库是将各业务系统数据抽取出来,按照决策分析型数据要求对数据进行清理转换重新组织,建立分析处理环境,然后采用联机分析(OLAP)技术或者数据挖掘技术处理进行数据分析,挖掘出潜在的有价值的信息,供用户参考决策。

二、高校教学管理数据仓库教学管理系统的设计

1.体系结构设计

数据仓库是基于传统数据库积累的数据和其它渠道收集的各种数据信息搭建起来的面向联机分析处理(OLAP,ONLineAnalyticalprocessing)的分析型信息集合,总体结构为三个层次:(源数据)数据处理、数据存储、数据分析。高校教学管理系统数据仓库包括数据源、数据处理,数据存储和数据分析四个部分。数据源:主要来自数字化校园管理平台,涵盖高校各信息系统,教务管理、学籍管理、招生就业管理以及其他信息系统等的数据。数据处理:包括数据抽取、清理、转换和集成。首先从数据源中抽取数据,存储到临时数据表中,然后对抽取的数据进行清洗和转换,通过清洗去除决策分析无用的数据信息,通过转换使数据标准一致,将转换清理后的数据集成装入到数据仓库中。数据存储:各信息系统的数据与数据仓库系统的数据是相互独立的,因此各信息系统数据的变化不会自动更新数据仓库的数据,我们需要在设定数据同步存储机制,才能实现更新数据融入数据仓库存储。数据分析:数据抽取、清理、转换、存储到数据仓库系统以后,我们需要通过各种技术,如联机分析(OLAP)技术、数据挖掘(DM)技术、商业智能(BI)技术等形成统计分析报表供用户查看并做出相应的决策。

2.主题划分

数据仓库的重要特点是面向主题。当数据围绕主题域来组织时,决策分析者将能很明确地找到自己感兴趣的东西。建立数据仓库首先要根据用户的需要进行主题划分,然后根据主题建立数据仓库模型,通过ETL工具从数据源抽取数据到数据仓库,最后采用联机分析(OLAP)技术或数据挖掘(DM)技术对数据进行分析挖掘,根据分析及挖掘结果做出相应的决策。根据教学管理系统的应用需求,在高校教学管理新系统中,组织层领导最关注的教学质量,所以系统确定的主题主要包括:包含学生、教师、课程、教学质量等几个方面。

3.数据仓库模型设计

数据仓库模型比较常用的有两种:星型和雪花型两种。星型是由一个事实表和多个维度表进行关联,具有统计分析和查询速度快特点,所以在教学管理信息系统中采我们采用星型模型。下面以教学质量主题为例说明数据仓库模型的设计。维表我们设计为时间表、学生成绩表、学生就业情况表、学生奖惩表、学生学习情况、教师教学水平表,事实表由就业率、等级及数量、学生获奖等级及数量等构成。

4.联机分析(OLAP)

联机分析(OLAP)是针对某一个具体主题,采用联机分析术(OLAP)或数据挖掘(DM)技术对数据仓库中的信息进行统计分析。联机分析包括多维数据分析方法,大体上可分为切块、旋转、钻取。所谓的旋转就是交换维度的位置关系,以便于决策人员可以不同角度得到多维数据,获取有价值的信息。通过联机分析技术的旋转方法我们可以很容易的发现教学管理系统教学质量问题,如教学计划不合理、有些教师水平有待提高等,通过钻取可以更深入的分析出教学计划不合理的各种因素。

三、结束语

相关文章
相关期刊