我现在想做一个多用户访问的三层数据库,但是对于三层数据库只知道基本的构造,不知道,其真正的原理,所以对于一些数据的访问很不清晰。
下边我举个例子请高手指点:
服务器:
Instancing : Multiple Instance
Threading Model: Apartment/ Free(区别是什么)
放入控件:ADOConnection ADOQuery DataSetProvider(连接ADOQuery )
客户端:DCOMConnection ClientDataSet(连接DataSetProvider)现在有三个客户端:
情况一: 三个同时访问数据库
A端 利用 ClientDataSet 访问 数据库 A表
B端 利用 ClientDataSet 访问 数据库 B表
C端 利用 ClientDataSet 访问 数据库 C表
那么我的问题是:  服务器端只有一套 数据源,由于采用Free 线程模式,服务器是不是将产生三个线程分别为三个客户端服务.
情况一: 三个同时访问数据库
A端 利用 ClientDataSet 访问 数据库 A表 添加
B端 利用 ClientDataSet 访问 数据库 A表 编辑
C端 利用 ClientDataSet 访问 数据库 A表 删除
那么我的问题是:  这个时候的操作是不是 我在客户端操作中需要 采用加锁机制 使ABC分别访问数据库有这样三层数据库 多用户的高手,请多多发言,也可以谈谈你的实现具体方法.