Конференция "Базы" » В процессе работы с программой отключить всех пользователей! [D7]
 
  • dadbbgt (04.11.12 18:37) [0]
    Здравствуйте!
    Есть БД Access и, к которому одновременно подключены несколько пользователей через ADO. Потом один из них нажимает на определенную кнопку и мне необходимо всех остальных пользователей отключить от БД, а его оставить одного . Как это сделать? Спасибо!
  • Anatoly Podgoretsky © (04.11.12 19:24) [1]
    Тебе надо подключиться к каждому компьютеру, найти нужный процесс, и удалить его.
    Акцесс это файл серверная СУБД
  • sniknik © (04.11.12 19:51) [2]
    а можно написать трехзвенку... ну и типа раз твой сервер будет "рулить" подключениями/логикой, то не проблема в нем сделать и "выключатель" коннекта.
    или делать рассылку с одного клиента остальным (способ еще обдумать) чтобы они завершились, в клиентах соответственно обработчик... хотя, будет весело, если кто со стороны узнает о таком "событии" выключающем прогу, шутка будет шо надо.
  • Anatoly Podgoretsky © (04.11.12 21:08) [3]
    > sniknik  (04.11.2012 19:51:02)  [2]

    Да без синяков будет трудно обойтись.
  • Германн © (05.11.12 02:40) [4]

    > dadbbgt   (04.11.12 18:37)
    >
    > Здравствуйте!
    > Есть БД Access и, к которому одновременно подключены несколько
    > пользователей через ADO. Потом один из них нажимает на определенную
    > кнопку и мне необходимо всех остальных пользователей отключить
    > от БД

    А на фига?

    Я простой пользователь БД.
    Сижу, чиню примус, никому не мешаю.
    Пардон, перепутал. :)

    Сижу читаю, редактирую, добавляю запись в БД, а меня бесцеремонно отключают от этой БД "без объявления войны"!
  • MsGuns © (05.11.12 12:51) [5]
    Очень похоже на "монопольку" 1С
  • sniknik © (05.11.12 13:07) [6]
    > Очень похоже на "монопольку" 1С
    нифига не похоже. подключится в монопольном, это одно, и можно и тут с access, а вот выкинуть всех после подключения в "общем" другое, и тут уже сервер/(или извращения) нужен.

    p.s. не знаю как сейчас когда возможность(сервер) у 1С есть, но раньше, когда 1С работала с файл серверной базой, админы только и делали, что бегали по бухгалтериям/отделам кадров с "да выйдите наконец из 1-эса мне обновления накатить нужно!!!". потому как на всякие сообщения о подобном же, этим "тупым бухам" было нас... т.е. плевать, и R-админов еще не было (не знали про них).
  • sniknik © (05.11.12 13:21) [7]
    > не знаю как сейчас
    ну, судя по всему, еще актуально (т.е. даже если есть возможность не все знают/разрешено/пользуются), т.к. инет забит темами типа -
    http://www.forum.mista.ru/topic.php?id=632215
    63 - 02.10.12 - 13:51 Пишу так Net Send/Barton/Выйдите с 1С, что не так?
  • Очень Злой (05.11.12 15:00) [8]

    > потому как на всякие сообщения о подобном же, этим "тупым
    > бухам" было нас... т.е. плевать, и R-админов еще не было
    > (не знали про них).


    Хм. Я например в таких случаях пишу всем сообщение (всему домену) чтобы повыходили из таких-то и таких-то программ в течении допустим 5-10 минут.
    Если по истечению этого времени кто-то не вышел, то захожу на ихнии машины телнетом и делаю shutdown -r -f
    пару раз недовольные юзеры прибегали, типа у них почему-то компьютер сам выключился, но теперь уже перестали и стали внимательнее читать сообщения и делать что их просят
  • MsGuns © (05.11.12 16:47) [9]
    >бегали по бухгалтериям/отделам кадров с "да выйдите наконец из 1-эса мне >обновления накатить нужно!!!"

    Я именно это и имел в виду :)
  • sniknik © (05.11.12 17:56) [10]
    > то захожу на ихнии машины телнетом и делаю shutdown -r -f
    комплекс бога? не попадался тебе "главный бух" который из-за этого не сделанный квартальный отчет, и соответственно лишение всех премии, на тебя свалил... а ведь мог.
  • Smile (05.11.12 18:36) [11]
    и мне необходимо всех остальных пользователей отключить от БД, а его оставить одного

    идея больного идиота
    :(
  • AV © (06.11.12 08:57) [12]
    У меня в табле Setup было в том числе поле, которое отвечало за выход.
    Если требовалось обновление(срочное/нет - другое поле), в то в поле писалось время до выхода.
    Каждый экземпляр программы раз в минуту проверял это поле,  и предупреждал пользователя, что через X минут в течении Y минут запросы никакие выполнятся не будут, можно курить.
  • MsGuns © (06.11.12 11:57) [13]
    >AV ©   (06.11.12 08:57) [12]

    В народе подобные мантры называются костылями.
    До первой канавы :)
  • AV © (06.11.12 13:19) [14]

    > MsGuns ©   (06.11.12 11:57) [13]

    Да. Постоянно в ней барахталось :)

    Зато хоть что-то. В технологии файл-сервер общение через отдельную(ые) табличку(и), думаю, самое простое, что можно придумать
  • Медвежонок Пятачок © (07.11.12 12:52) [15]
    Каждый экземпляр программы раз в минуту проверял это поле,  

    Особенно если этот экземпляр - не чья-то поделка, а процесс самого MS Access или Excel или еще чего-то там. да хоть процесс MSSQL, в котором кто-то подцепил этот файл данных.
  • Очень Злой (07.11.12 19:40) [16]

    > sniknik ©   (05.11.12 17:56) [10]
    >
    > > то захожу на ихнии машины телнетом и делаю shutdown -r
    > -f
    > комплекс бога? не попадался тебе "главный бух" который из-
    > за этого не сделанный квартальный отчет, и соответственно
    > лишение всех премии, на тебя свалил... а ведь мог.


    Я даю достаточно времени чтобы завершить текущую работу...
    А если кому-нить этого недостаточно - то либо по телефону звонят, либо прибегают и тогда вместе решаем что приоритетнее.
    А вот что делать, когда нужно срочно накатить обновление, а у какого-нить юзера (чаще у юзерш)  открыта программа, которая мешает накатке обновления, а самой этой юзерши нет на рабочем месте (где-нить ходит, хоть и по работе, но от этого не легче) и вдобавок еще и кабинет закрыт...
    вот для таких случаев shutdown -r -f самое оно... ну если конечно обновляемая система не умеет сама отключать юзеров в процессе обновления...
 
Конференция "Базы" » В процессе работы с программой отключить всех пользователей! [D7]
Есть новые Нет новых   [119429   +15][b:0][p:0.001]