![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Пользователь
Регистрация: 06.04.2009
Сообщений: 34
|
![]()
Здравствуйте! Подскажите пожалуйста как можно с помощью VBA подключиться к БД SQL SERVER? И производить резервное копирование и восстановление БД SQL SERVER с помощью VBA?
![]() |
![]() |
![]() |
![]() |
#2 | |
Форумчанин
Регистрация: 17.10.2008
Сообщений: 239
|
![]() Цитата:
Для резервирования данных SQL сервера существует огромное количество программ которые входят и в комплект самого сервера так и в разные утилиты для него. К примеру если взять MS SQL - то в нем есть средства BackUp vis Restore, в то же время подобная прога есть и в ReskIt - в которой есть более глубокие средства резервирования, позволяющие сохранять не только данные, но и образы (формулы, изображения и прочее). Именно ее я и предпочитаю. что же касается вызова этих программ из VBA, то здесь есть достаточные сложности - вы должны быть зарегистрированны на сервере как SQL-вский супервайзер, а любой даже мало знакомый администратор ни когда не передаст эти права на другой кроме сервера компьютер, даже на свой. Если вы хотите сохранять на своем компьютере обычные данные используя Excel, не сохраняя образы, то Первое для нормально созданных систем необходимо знать два имени и пароля. Первый - чтение всех данных, второй - запись всех данных. Знание супервайзеровского пароля здесь не поможет - так как он может не иметь право на запись, а Rootовский пароль, мало того что он принципально при генерации SQL сервера разный, спрятан так далеко, что взломать его до сих пор не удалось. Система ображается к нему крайне редко. Второе Вам необходимо знать какую таблицу вы собираетесь резервировать. Здесь тоже есть некоторые нюансы. Некоторые таблицу имеет переадресацию на другие по определенному признаку. По этому если вы напрямую обратитесь к таблице которая имеет точку входа из другой то у Вас просто зависнет компьютер и Сервер, так что спасет только RESET. Третье - когда специальные программы занимаються резервированием, они сохраняют только новые данные, автоматически определяя последную сохраненную дату. Четвертое, что необходмо знать это тип и название файла, в котором вы будете сохранять данные. Только когда вы будете знать все эти нюансы то можно приступить к написанию проги резервирования. для простоты кода я задам некоторые условия первое имя чтения - ima1, пароль - ima1; имя записи - zap1, пароль- zap2 второе имя таблицы - tab, кол-во полей - 7, первое поле - время записи - имя - vrzap, записывать за предыдущие сутки четвертое - приемник - сам файл - excel1 адрес в сети - 192.172.0.1 код чтения Код:
Код:
|
|
![]() |
![]() |
![]() |
#3 |
Регистрация: 03.04.2011
Сообщений: 5
|
![]()
Уважаемый ЮНЛИНГ
Не могли бы Вы подсказать с какой книги начать изучение MS SQL 2005? Я работаю в сфере АСУ. Наша SKADA система использует 2005 SQL. Программисты сидят в Индии, что делает очень затруднительным общение с ними. Я прочел книгу Джона Уокенбаха "Профессиональное программирование на vba в Excel 2003". Я уже написал несколько макросов, которые существенно облегчили процесс создание конфигурации базы для SCADA(база создается в EXCEL а потом загружается в SQL). Теперь бы я хотел изучить технологию ADO и научиться с помощью EXCEL вытягивать из SQL разные параметры системы. Это бы сделало меня в моем коллективе джидаем и более конкурентоспособным на рынке специалистов SCADA систем в будущем. Спасибо Последний раз редактировалось Hom_1985; 06.04.2011 в 00:40. |
![]() |
![]() |
![]() |
#4 |
Пользователь
Регистрация: 02.05.2010
Сообщений: 26
|
![]()
Маленькое добавление к ответу ЮНЛИНГ.
Перед тем как работать с ADO необходимо его отметить галочкой в VBA> Tools>References> выбираем галочкой в списке Microsoft Activex Data Objects 2.0 Libaru и Microsoft Activex Data Objects Recordset 2.0 Library далее Ok и сохраняем, иначе VBA не видит обьекты ADO. |
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Re:Обмен с SQL Server | Lexx_forum | Microsoft Office Excel | 1 | 16.02.2009 14:30 |
Доступ к БД (SQL server) в ОС Windows server 2003 | Mann | SQL, базы данных | 2 | 07.12.2008 19:15 |
C# + SQl server | kommunist | Общие вопросы .NET | 0 | 24.07.2008 21:09 |
MS SQL Server | AlexDoul | БД в Delphi | 3 | 22.11.2007 09:33 |