写一系统,实现方式:启动的时候,读取程序生成的ini文件,检测字符穿连接等,能否成功连接完全由delphi的adoconnection解决,这样做主要是为了多用户操作。系统已经基本完成了,启动运行时候消耗cpu 4%左右,消耗这么多可以吗?
现在我自己在通过网络测试的时候,突然有几个问题:
第一:多用户在共同提交数据的时候,如果两个人或者多个人同时向数据库中提交相同记录,这样可能就造成数据的混乱等后果,怎么解决呢?前提程序已经实现对关键子的检测,但是在相同时刻提交相同信息还是可能的,通过什么办法可以很完美的解决呢?开始想用队列形式或者mts,觉得那个,提出这个问题,请高手参与并讨论,给我一个比较好的解决办法。
第二:在网络上一台机子在运行程序,通过网络写数据,写成功后,必须通过更新才能显示出来数据,现在问题就在更新所有数据的时候,当sqlserver关闭的时候,不能写或者错误是很正常的,但是这个错误出现很多种,很难控制,我的错误异常几乎没有任何用处,不知道怎么回事?我的所有数据完全靠一个ini文件提供字符串连接的进行连接,我如果把ini文件删除又怎么办呢?很迷惑,系统运行时,我按照上述情况测试时候的确出现许多问题,我给的错误异常是中文,但是根本没有按照我的意思去显示提示给用户,怎么办?
我想写一程序专门检测sqlserver的连接情况,如果出现暂停或者停止或者其他情况,立即关闭掉adoconnection的connected,这样可以吗?应该出现我给出的错误吧,但是这个检测程序又怎么实现呢/疑惑,请高手参与讨论,一起进步,欢迎……  

解决方案 »

  1.   

    不好意思啊,可能是我的表达不太清楚的缘故!主要功能是一个校园管理系统MIS,在启动程序的时候,可以生成ini文件也可以读ini文件,读的前提是首先存在ini文件,这个ini文件是保存数据库的连接设置,如果不存在这个文件,程序将给出一个提示信息,让用户重新配置数据的连接,配置好程序根据配置文件进行数据的连接,如果数据文件与程序指定的文件一致就通过,不对的话,重新让用户进行配置!在程序运行成功后,数据的连接将不靠ini文件提供的连接了,依靠delphi的adoconnection进行。所以可以删除ini文件的,在本地盘上删除一个文件不会有什么错吧?但是用户在写数据文件后,必须更新数据才能显示用户提交的数据,但是我删除ini文件后或者关闭sql服务器,这个更新程序将不能正常执行操作,因为一是得不到连接文件,不能正确连接,二是服务器关闭也不能工作。但是这些错误我已经明确给出异常,但是显示的时候还是delphi自己的异常啊。
    对于第一种情况,多用户共同提交数据时候,同时提交相同信息,数据将错误,虽然已经给出了检测错误,但是尽量使这种错误避免,考虑用队列消息或者mts等实现,请高手就这个问题进行讨论!谢谢  
      

  2.   

    校园管理系统的mis啊,你的印象中mis实现的功能都有那些啊?