Я разрабатываю программу базы данных в базе клиент/сервер. Я начал сервер TcpListener
класс (C#). Клиенты будут подключены и запросов от клиентов, будет выполняться в файле на стороне сервера mdf
и результат передается через NetworkStream
классаКак копировать файл базы данных SQL Server 2005 (MDF)
Теперь, клиент выполняет транзакцию (DML) над объектом SqlConnection
(одно соединение для каждого Клиента Thread) на сервере, в то время как обработка транзакции одного клиента на платформе таблице, другие клиенты могут не в состоянии восстановить данные с сервера, пока первый клиент commit
ред или rollback
не эд свою сделку на данной конкретной таблице.
Здесь, мне нужно реплицировать файл MDF для других клиентов, которые все запрашивающие данные, в то время как клиент делает DML Сделки, не заботясь о Совершении/Aborting любого клиента ..
просто мне нужен ток Данные, доступные в файле MDF другим клиентам. После того, как транзакция Commit
изменяет только фактические данные в MDF.
+1 Обратите особое внимание на уровни изоляции. Однако чтение грязных данных - очень опасная вещь, потому что ti может появиться и исчезнуть по желанию, что означает, что ваш клиент не будет знать, что на самом деле все еще существует к моменту получения набора данных. –
Я говорю, что другие клиенты не могут получить данные .. всякий раз, когда операция вставки, удаления, обновления выполняется клиентом1, клиентский запрос Select2 ожидает ответа на эту конкретную таблицу. Его происходит г-н @Remus Rusanu. во время выполнения 'objAdap.Fill (objDataset)' его ожидания .. и когда Client1 выполнил команду 'commit' или' rollback', тогда отобразятся данные запроса Query Client2. –