多程序访问同一个数据库的问题
现在有一个需求,要实现下面功能:
要编写一个程序,并安装在多台PC上。此程序会访问一个网络数据库(目前采用Oracle的数据库),读取数据库记录,按照记录在客户机上执行动作,并update数据库。要求在其中一台PC访问网络数据库的时候,其他PC的程序不可访问此数据库(包含读取,写入数据库),只有在这台PC断开连接后其它PC才能进行访问。
问题有两个:
1.如何能让程序进行独占式的访问。
2.如何防止下述情况发生:假设有A,B,C三台客户机,均安装有此程序。A正在访问数据库,此时B、C均无法访问;当A断开数据库连接后,B发现数据库连接空闲,开始访问数据库;当B断开数据库连接后,A取得了数据库的访问权…………结果就是导致A,B交替访问数据库,而C一直无法访问数据库。