我想用delphi + access 的形式做一些商业性比较强的管理系统(比如说:超市管理系统......)我觉得我在功能的实现上应该没有什么问题(我在工作中经常做delphi+sqlserver的应用,只是我从来没有做过access的,对access很不熟悉)目前有些问题我不知道怎么解决:我在我自己的机器上的任意目录先建立一个数据库,并且创建一些相应的表,这样的话,我就需要事先在我的机器上配置相应的数据原,但是配置的数据源又是指定了数据库地址的,问题就出在这里了:我想在我开发完成以后,把我以前建立的那个光有框架的空数据库通过拷贝粘贴的形式放到我的工程目录中(然后再一起交给用户),这样就不需要用户建立数据库了吧!但是这个时候数据原的问题又怎么解决?(因为数据库已经改变了物理路径)我需要在程序中做哪些动态的配置来解决这个问题??????????(在sql的应用中,我知道可以在程序中通过写注册表的形式来自动的帮助用户配置数据原,这样的话,对于一个即使是不懂计算机的用户,也可以直接点击我的exe来进行一些应用了)(我在delphi盒子下载了一个超市管理系统,我点击exe运行起来以后,并且添加了库存,这证明它的目录下实现建好的数据库是可以用的,但是我在我的机子上的数据源中没有看到多出的任何添加,主要是这点把我搞糊涂了,难道不用数据源就可以连数据库(不可能的吧!!!!))

解决方案 »

  1.   

    使用Ado连接字符串,指向路径 动态声称
    DBName := ...数据库路径
    adoconnection.connectionsting
         := 'Provider=Microsoft.Jet.OLEDB.4.0;Password="";Data Source='
          + DBName + ';Persist Security Info=True';
      

  2.   

    你真的用sqlserver吗
    连access应该和sqlserver一样的,用ado很方便
      

  3.   

    路径取法: extractfilepath( application.exename )   
     或者                    ParamStr(0)
      

  4.   

    最简单的就是你的机子上装了Office以后,就可以直接用Delphi+ACCESS的了
      

  5.   

    哦,我一下子想起了,还要问一个关键的问题,如果我把做好的东西给用户了,用户的机子上应该是不一定非要装access的吧???????????
      

  6.   

    楼上的同志们不要见笑,这些问题我基本上都解决了!!!!!!!我终于回过神来了,我把Provider=Microsoft.Jet.OLEDB.4.0这个给搞错了,我用的是我做sqlserver应用时习惯用的驱动提供者ODBC去了,这个虽然也能够连接ACCESS,但是这个里面必须选择事先配置好了的数据源,不像是在Microsoft.Jet.OLEDB.4.0中的可以直接配置数据库的名字而不是数据源的名字.这样的话,就比较适合做桌面数据库应用的开发!!!谢谢大家的帮助了!(以前真的没有做过ACCESS的,在这里献丑了)