词条 | access |
释义 | 1 微软发布的关联式数据库管理系统Microsoft Office Access(前名 Microsoft Access)是由微软发布的关联式数据库管理系统。它结合了 Microsoft Jet Database Engine 和 图形用户界面两项特点,是 Microsoft Office的成员之一。其实Access 也是微软公司另一个通讯程序的名字,想与 ProComm 以及其他类似程序来竞争。可是事后微软证实这是个失败计划,并且将它中止。数年后他们把名字重新命名于数据库软件。Access在2000年的时候成为了计算机等级考试中的计算机二级的一种数据库语言并且因为它的易学易用的特点正逐步取代传统的VFP成为二级中最受欢迎的数据库语言。 ◎ 软件简介Access 是微软公司推出的基于Windows的桌面关系数据库管理系统(RDBMS,即Relational Database Management System),是Office系列应用软件之一。它提供了表、查询、窗体、报表、页、宏、模块7种用来建立数据库系统的对象;提供了多种向导、生成器、模板,把数据存储、数据查询、界面设计、报表生成等操作规范化;为建立功能完善的数据库管理系统提供了方便,也使得普通用户不必编写代码,就可以完成大部分数据管理的任务。 Access能够存取 Access/Jet、Microsoft SQL Server、Oracle(甲骨文软件公司),或者任何 ODBC 兼容数据库内的资料。熟练的软件设计师和资料分析师利用它来开发应用软件,而一些不熟练的程序员和非程序员的"进阶用户"则能使用它来开发简单的应用软件。虽然它支援部分面向对象(OOP)技术,但是未能成为一种完整的面向对象开发工具。 ◎ 发布历史Microsoft Access 1.0 版本在1992年11月发布。微软指定它对系统最小要求为视窗3.0配以4兆节内存.6兆节内存配以最小8兆节硬盘空间(建议最好有14兆节硬盘空间)则为建议的系统要求.当时软件以7张1.44兆节软碟发布的载体。 这个软件能够有效地处理大量记录但是测试显示在某些情况下会导致数据损毁.比如说,大小超过700MB的文件常会出问题。(值得注意的是在1.0版广泛应用的时候大多数硬盘是小于700MB的。)软件的使用指南指出过时的设备驱动和错误的配置可能会导致数据丢失。 Access的最初名称是Cirrus。它开发于Visual Basic之前,当时的窗口引擎称作Ruby。比尔盖茨看过Ruby的原型后决定把这个基于Basic语言的组件作为一个独立的可扩展应用程序与Access联合开发。这个项目称作Thunder。这两个项目互相独立的被作为底层的窗口引擎开发并且互不兼容。 然而,在VBA出现后它们被合并在一起。 1995年末,access 95发布,这是世界上第一个32位关系型数据库管理系统,使得access的应用得到了普及和继续发展。 1997年,access 97发布。它的最大特点是在access数据库中开始支持web技术,这一技术上的发展,开拓了access数据库从桌面向网络的发展。 21世纪初,microsoft发布access2000,这是微软强大的桌面数据库管理系统的第六代产品,也是32为位access的第三个版本。至此,access在桌面关系型数据库的领域的普及已经跃上了一个新台阶。 2003年微软正式发布了access 2003,这是继2002年后发布的最新版本,它在继承了以前版本的优点外,又新增了一些使用功能。 之后微软又发布了access2007,目前access的最高版本是access 2010。 ◎ 主要用途Microsoft Access在很多地方得到广泛使用,例如小型企业,大公司的部门,和喜爱编程的开发人员专门利用它来制作处理数据的桌面系统。它也常被用来开发简单的WEB应用程序.这些应用程序都利用ASP技术在Internet Information Services运行.比较复杂的WEB应用程序则使用PHP/MySQL或者ASP/Microsoft SQL Server. 它的使用方便程度和强大的设计工具为初级程序员提供许多功能。不过,这种便于使用可能使人误解。这类开发者都是没有在应用或者数据设计方面训练的办公室从业人员。因此许多人以为这样的开发者能够创造可用的系统,但也有很多人认为工具本身的局限性产生了这样的误导。 一些专业的应用程序开发人员使用 Access 用作 快速应用开发,特别是给街道上的推销员制作一个初型或独立应用程序的工具。可是如果是透过网络存取数据的话,Access 的可扩放性并不高.因此当程序被较多使用者使用时,他们的选择多会是倾向于一些客户端-服务器为本的方案,例如 Oracle、DB2、Microsoft SQL Server、Windows SharePoint Services、PostgreSQL、MySQL、Alpha Five、MaxDB,或者Filemaker。无论如何,不少 Access 的功能(表单,报告,序列和VB代码)可以用作其他数据库的后期应用,包括 JET(档案为主的数据库引擎,Access 缺省使用)、Microsoft SQL Server、Oracle和任何其他跟ODBC兼容的产品。这种方法允许开发者把一个成熟的应用的数据移动到一台更大功率的服务器而没有已经在适当的位置牺牲发展。 很多Microsoft Access的开发者使用Leszynski命名约定,虽然这不普遍;它是一次编程大会,并非一个DBMS实施的规章。 ◎ 特性与一般的RDBMS完全不同,它缺乏数据库触发和预存程序。自从MS Access 2000 (Jet 4.0),开发人员可以在查询中设定参数,这跟预存程序很相似的,但这些“预存程序”只能处理一个程序.当资料表内数据发生变化时,它确实允许形式包含被引发的代码,使用是普通的透过查询和其他技术在进入营运储存的程序在方面RDBMS支援这些的。 进入可提供的编程语言,当时在另一个内产品Microsoft Office家具,微软公司应用的Visual Basic。两个数据库进入讯息库COM组成部分被提供:这笔遗产数据存取物体(DAO),用进入和新只可提供ActiveX数据对象(忙乱)。 MicrosoftAccess容易被应用于小的工程,但是如果设计的不好对大工程是无用的。 全部数据库质问,形式和报告被储存在数据库里,并且与相关的模型的理想协调,没有与他们做一个身体上组织的阶层的可能性。 一种设计技术是把进入应用在数据和计划之间进行分发。一数据库应该只包含表和关系,当另一个将有全部计划时,形式,报告和质问和对第一个数据库表的连接。令人遗憾,当连结时,进入允许没有有关的道路,因此那些发展环境作为这种生产环境有相同的道路应该(虽然你写你们自己的能"动态连接程序"常规在里VBA那搜出能一定背面结束档案以透过这个目录树搜寻,如果它发现这条电流通路它不能)。 这种技术也允许开发者在不同的档案中分申请,因此一些架构是可能的。 ◎ 优缺辨析◎ Access的优点(1)存储方式简单,易于维护管理 Access管理的对象有表、查询、窗体、报表、页、宏和模块,以上对象都存放在后缀为(.mdb或.accdb)的数据库文件中,便于用户的操作和管理。 (2)面向对象 Access是一个面向对象的开发工具,利用面向对象的方式将数据库系统中的各种功能对象化,将数据库管理的各种功能封装在各类对象中。它将一个应用系统当作是由一系列对象组成的,对每个对象它都定义一组方法和属性,以定义该对象的行为和外国,用户还可以按需要给对象扩展方法和属性。通过对象的方法、属性完成数据库的操作和管理,极大地简化了用户的开发工作。同时,这种基于面向对象的开发方式,使得开发应用程序更为简便。 (3)界面友好、易操作 Access是一个可视化工具,是风格与Windows完全一样,用户想要生成对象并应用,只要使用鼠标进行拖放即可,非常直观方便。系统还提供了表生成器、查询生成器、报表设计器以及数据库向导、表向导、查询向导、窗体向导、报表向导等工具,使得操作简便,容易使用和掌握。 (4)集成环境、处理多种数据信息 Access基于Windows操作系统下的集成开发环境,该环境集成了各种向导和生成器工具,极大地提高了开发人员的工作效率,使得建立数据库、创建表、设计用户界面、设计数据查询、报表打印等可以方便有序地进行。 (5)Access支持ODBC(开发数据库互连,Open Data Base Connectivity),利用Access强大的DDE(动态数据交换)和OLE(对象的联接和嵌入)特性,可以在一个数据表中嵌入位图、声音、Excel表格、Word文档,还可以建立动态的数据库报表和窗体等。Access还可以将程序应用于网络,并与网络上的动态数据相联接。利用数据库访问页对象生成HTML文件,轻松构建Internet/Intranet的应用。 (6)支持广泛,易于扩展,弹性较大 能够将通过链接表的方式来打开EXCEL文件、格式化文本文件等,这样就可以利用数据库的高效率对其中的数据进行查询、处理。还可以通过以Access作为前台客户端,以SQL Server作为后台数据库的方式(如ADP)开发大型数据库应用系统。 总之,Access是一个既可以只用来存放数据的数据库,也可以作为一个客户端开发工具来进行数据库应用系统开发;即可以开发方便易用的小型软件,也可以用来开发大型的应用系统。 ◎ ACCESS的缺点ACCESS是小型数据库,既然是小型就有它的局限性(下面关于性能方面的缺点仅指用Access作为数据库的情况下,不包括用Access作为客户端前台,用SQL Server作为后台数据库的情况): 1.数据库过大,一般百M以上(纯数据,不包括窗体、报表等客户端对象)性能会变差。 2.虽然理论上支持255个并发用户,但实际上根本支持不了那么多,如果以只读方式访问大概在100个用户左右,而如果是并发编辑,则大概在10-20个用户。 3.记录数过多,单表记录数过百万性能就会变得较差,如果加上设计不良,这个限度还要降低。 4.不能编译成可执行文件(.exe),必须要安装Access运行环境才能使用。 ◎ 安全策略◎ 一、密码式给数据库起一个随机复杂的名称,避免被猜到被下载,这种方式在以前很流行,因为大家都对自己的代码很有自信。但随着错误提示对数据库地址的泄露导致数据库被非法下载,这种方式也就越来越少人用了。 ◎ 二、"#"式在数据库名称里加上#号,从URL上请求时#是请求地址和请求参数的一个分隔字符,如果知道了数据库名,直接请求的话,WEB服务器会认为请求的是access而不是access#.mdb,所以会提示找不到文件,但是很遗憾,URL中对于这些特殊的字符都会有一个特殊的表示方式,#的特殊表示就是%23,那么access#.mdb将会被下载。还有如果用FlashGet之类的下载工具也可以直接下载。 ◎ 三、ASP式这种作法是比较专业但也是很安全的也是现在比较流行的作法,但是现在许多的人只是作了一半,只是将数据名改成ASP而以,这样的话直接用FlashGet之类的下载工具一样可以将数据库下载,这种方式的正确作法有两步: 第一步:在数据库内创建一个字段,名称随意,类型是OLE对象,内容设置为单字节型的" "<%",即(ASP代码chrB(asc("<")) & chrB(asc("%"))的运行结果) 第二步:将数据库改名为ASP 这样从URL上直接请求这个数据库将会提示"缺少关闭脚本分隔符",从而拒绝下载,因为这个方式比较麻烦我在网上找了一段小代码来完成OLE对象的插入工作,只要将数据库名设置好,然后放在和数据库内一目录运行一下就可以了。 代码全文数下: <% db="d.mdb" '这里改成您的数据库地址 set conn=server.createobject("Adodb.Connection") connstr="Provider=Microsoft.Jet.OLEDB.4.0;Data Source="&Server.MapPath(db) conn.open connstr conn.execute("create table notdownload(notdown oleobject)") set rs=server.createobject("adodb.recordset") sql="select * from notdownload" rs.open sql,conn,1,3 rs.addnew rs("notdown").appendchunk(chrB(asc("<")) & chrB(asc("%"))) rs.update rs.close set rs=nothing conn.close set conn=nothing %> 这段代码运行完之后将会在数据库内生成一个nodownload表,表内字段是notdown。如果数据库内已有同名的数据表存在请将代码内的nodownload改成自己想要的数据表名即可。 ◎ 四、asa式这种方式的真谛是利用IIS对ASA文件的保护,从而使得数据库文件不能从URL上直接请求下载,但是这种方式被误解成只要将文件后缀改成ASA就可以了。要知道IIS只是对global.asa这个文件名有请求保护,所以这种方式只能将数据库名设置为global.asa,而且要注意的是,设置成global.asa之后最好不要将其放在主机或虚拟目录的根目录里,不然会被IIS当然正常的global.asa文件进行尝试运行的。 ◎ Excel数据导入Access方法如果想将Excel中的数据转换到Access中,可以采取下面的直接导入法和建立链接法来完成。 一、直接导入法 1.启动Access,新建一数据库文件。 2.在“表”选项中,执行“文件→获取外部数据→导入”命令,打开“导入”对话框。 3.按“文件类型”右侧的下拉按钮,选中“Microsoft Excel(.xls)”选项,再定位到需要转换的工作簿文件所在的文件夹,选中相应的工作簿,按下“导入”按钮,进入“导入数据表向导”对话框。4.选中需要导入的工作表(如“工程数据”),多次按“下一步”按钮作进一步的设置后,按“完成”按钮。 注意:如果没有特别要求,在上一步的操作中直接按“完成”按钮就行了。 5.此时系统会弹出一个导入完成的对话框,按“确定”按钮。 至此,数据就从Excel中导入到Access中。 二、建立链接法 1.启动Access,新建一数据库文件。 2.在“表”选项中,执行“文件→获取外部数据→链接表”命令,打开“链接”对话框。 3.以下操作基本与上述“直接导入法”相似,在此不再赘述,请大家自行操练。 注意:“直接导入法”和“建立链接法”均可以将Excel数据转换到Access中,两者除了在Access中显示的图标不同(图2)外,最大的不同是:前者转换过来的数据与数据源脱离了联系,而后者转换过来的数据会随数据源的变化而自动随时更新。 ◎ 了解Access2007功能区与Access老版本相比,取消传统菜单操作方式而代之以功能区是Access20007的明显改进之一,用户可以在功能区中进行绝大多数的数据库管理相关操作。Access2007默认情况下有4个功能区,每个功能区根据命令的作用又分为多个组。 ◎ 1.“开始”功能区“开始”功能区中包括视图、剪贴板、字体、格式文本、记录、排序和筛选、查找、中文简繁转换8个分组,用户可以在“开始”功能区中对Access2007进行诸如复制粘贴数据、修改字体和字号、排序数据的操作。 ◎ 2.“创建”功能区“创建”功能区中包括表、窗体、报表、其他和特殊符号5个分组,“创建”功能区中包含的命令主要用于创建Access2007的各种元素。 ◎ 3.“外部数据”功能区“外部数据”功能区包括导入、导出、收集数据、SharePoint列表4个分组,在“外部数据”功能区中主要对Access2007以外的数据进行相关处理。 ◎ 4.“数据库工具”功能区“数据库工具”功能区包括宏、显示/隐藏、分析、移动数据、数据库工具5个分组,主要针对Access2007数据库进行比较高级的操作。 除了上述4中功能区之外,还有一些隐藏的功能区默认没有显示。只有在进行特定操作时,相关的功能区才会显示出来。例如在执行创建表操作时,会自动打开“数据表”功能区。 2 C语言函数名函数名: access 头文件:io.h 功 能: 确定文件的访问权限,检查某个文件的存取方式,比如说是只读方式、只写方式等。如果指定的存取方式有效,则函数返回0,否则函数返回-1。 用 法: int access(const char *filename, int amode); int _access(const char *path,int mode) ; ◎ 描述access函数,当对文件使用时,判断是否存在指定的文件,以及是否能够按指定的模式进行访问。当对目录使用时,只判断是否存在指定的目录;因为在Windows系统下所有的目录都有读和写的访问权限。 参数mode可为以下的其中之一: 00 只存在 02 写权限 04 读权限 06 读和写权限 返回值: 如果文件拥有给定的模式则返回0,如果发生错误返回-1。 可移植性: Windows,Unix 及其类似系统都存在此函数。 请注意,lcc-win32同时支持_access(微软公约)和access。 程序例: #include <stdio.h> #include <io.h> int file_exists(char *filename); int main(void) { printf("Does NOTEXIST.FIL exist: %s\", file_exists("NOTEXISTS.FIL") ? "YES" : "NO"); return 0; } int file_exists(char *filename) { return (access(filename, 0) == 0); } 3 交换机主干道模式access链路类型端口,一种交换机的主干道模式。2台交换机的2个端口之间是否能够建立干道连接,取决于这2个端口模式的组合。只允许默认VLAN的以太网帧通过的端口称为Access链路类型端口。Access端口在收到以太网帧后打VLAN标签,转发出端口时剥离VLAN标签,对终端主机透明,所以通常用来连接不需要识别802.1Q协议(支持隧道技术,它允许服务提供商在VLAN内部传输VLAN,从而保留了客户的VLAN)的设备,如终端主机、路由器等。 |
随便看 |
百科全书收录4421916条中文百科知识,基本涵盖了大多数领域的百科知识,是一部内容开放、自由的电子版百科全书。