• 使用access数据库需要注意的问题


    使用access数据库需要注意的问题


        1. 明确一个概念:access与access数据库不同。
        对于大多数使用access的人来说,access与access数据库是一码事;但是对于使用access数据库做开发的人,需要区分access程序与access数据库。access程序是与用户交互的界面(想象一下Windows资源管理器与cmd命令提示行,它们是不同的界面);access数据库包含两部分,*.mdb与jet引擎:*.mdb是存储数据的文件,jet数据引擎是操作*.mdb文件的API。三者的关系如下图所示:
     
            access.exe | access查询分析器 | 网站等各种应用
      --------------------------------------------------------
                           jet数据引擎
      --------------------------------------------------------
                            *.mdb文件


        目前主流的windows操作系统(win 2000及以上),安装好之后都已经包含了jet引擎(通常是4.0版本的),因此大多数时候不需要单独安装jet引擎,基于access数据库的应用就可以工作。
       
        2. access数据库属于文件数据库。文件数据库不支持并发访问,不支持网络访问。
        关于文件数据库,这里不多做介绍,简单的说,就是格式比较特殊的文件,要使用专用的API才能访问。
        文件数据库不支持并发访问,这里的并发,指的是2个或2个以上的写操作同时进行;发出写操作的主题可能是进程,也可能是线程。
        文件数据库不支持网络访问。这里说的网络访问不包括网络共享的方式。用过mysql、oracle、sql server等数据库的开发者,都会发现数据库要启动一个监听器(名字不一定叫监听器)才能被网络上的程序访问,其实这个监听器就是(数据库)服务的入口;文件数据库,本质上是文件,而不是服务,所以不支持网络访问。
       
        3. *.mdb文件大小有2G的限制。
        准确的说,*.mdb中存储的有效数据的上限是2G,去除表结构等管理数据(meta data)占用的空间,实际的有效数据上限大约是1.8G。
        在*.mdb中,用delete操作删除的数据,只是被标记为删除,占用的存储空间不会被自动释放,也不会被再次使用。反复进行insert与delete操作之后,*.mdb文件的大小会超过2G,但其中有效的数据达到2G的时候,进行insert操作就会报错了。
        要想释放不再使用的空间,就要使用access程序的“数据压缩”,或者自己写程序(需要某些access提供的com组件)。
        注意:FAT32分区中的单个文件大小上限为4G,NTFS无此限制。
       
        4. 存储过程、外键。
        支持简单的存储过程,在“查询”中编辑。
        外键,在“关系”中设置。
       
        5. 不区分大小写。记录(record)中的字符,(进行字符比较的时候)不区分大小写,但显示(或者说select)的时候按照insert时的大小写显示。

       本文只列出了我做开发的过程中碰到的一些情况。欢迎讨论,欢迎补充。
      

  • 相关阅读:
    时间和时间戳的转换
    遍历Map的四种方法
    MyEclipse2015Stable3.0破解方法
    java 解压缩Zip文件 ziputil
    java Lock
    javaCountDownLatch闭锁
    JavaNIO非阻塞模式
    JavaNIO阻塞IO添加服务器反馈
    JavaNIO阻塞IO
    java三级考试理论题
  • 原文地址:https://www.cnblogs.com/ols/p/1375624.html
Copyright © 2020-2023  润新知