Консоль запросов SQL

Публикация № 556834

Программирование - Инструментарий

MsSQL Консоль запросов ADO SQLOLEDB OLEDB Provider ПолучитьСтруктуруХраненияБазыДанных

11
Иногда возникает желание посмотреть, как информация 1С уложена в базе данных. Данная обработка позволяет показать структуру базы данных, а так же обычными SQL-запросами просмотреть содержимое таблиц MsSQL.

Обработка использует SQLOLEDB-провайдер от Microsoft. Обычно в системе этот провайдер уже установлен и называется SQLSERV32.DLL. Драйвер называется обычно просто "SQL Server". Просмотреть установленные драйвера можно вызвав:

c:\windows\syswow64\odbcad32.exe - для х86 версии сервера предприятия, или

c:\windows\system32\odbcad32.exe - для х64 версии сервера предприятия.

Подключение выполняется следующим кодом:

	СтрокаПодключения = 
		"Provider=SQLOLEDB.1;
		|User ID=" + Пользователь + ";
		|Pwd=" + Пароль + ";
		|Data Source=" + Сервер + ";
		|Initial Catalog=" + База + ";
		|MultipleActiveResultSets=True";//наша database

	Если Соединение = Неопределено Тогда
		Connection  = Новый COMОбъект("ADODB.Connection");
	Иначе
		Connection  = Соединение;
	КонецЕсли;

Для того, что бы обработка заработала, необходимо установить параметры соединения с SQL-сервером по кнопке настройка. Естественно, нужно знать пользователя и пароль, которые имеют соответствующие разрешения на работу с СУБД.

А в остальном - пробуйте.

PS: И как я сразу не догадался такую штуку сделать. В форме запросов я добавил возможность показать сам объект при двойном щелчке на ссылку объекта. Там всё просто. Ссылка преобразуется в УИД, а потом тупо перебираются все возможные объекты метаданных. Есть идеи, как ускорить алгоритм, но меня производительность пока и так устраивает.

11

Скачать файлы

Наименование Файл Версия Размер
Консоль запросов SQL.
.epf 31,53Kb
21.10.16
41
.epf 31,53Kb 41 Скачать

См. также

Специальные предложения

Комментарии
Избранное Подписка Сортировка: Древо
1. Gilev.Vyacheslav 1823 21.10.16 17:18 Сейчас в теме
количество строк при этом как то учитывается?
2. igel9780 155 22.10.16 17:54 Сейчас в теме
(1) Gilev.Vyacheslav, Штатно при двойном клике на таблице, генерируется запрос типа SELECT TOP 100 %FIELDLIST% FROM %TABLENAME%. Потому как можно и не дождаться, пока таблица выкачается. Опять же, ADO выдает COMSafeArray для всех идентификаторов. Его приходится переводить в строку, что тоже не добавляет быстродействия.
3. igel9780 155 25.11.16 14:26 Сейчас в теме
Добавил возможность по двойному щелчку на поле идентификатора открывать соответствующий объект базы данных.
4. LavinVadik 101 07.04.18 06:20 Сейчас в теме
почему не указано что под управляемые формы или не управляемый?
под не управляемый не открывается под управляемые ругается!!!
не рабочая.!!!
прошу вернуть мне обратно мои 1 стартмани !!!


Ошибка инициализации модуля: ВнешняяОбработка.КонсольSQL.Форма.Форма.Форма
по причине:
{ВнешняяОбработка.КонсольSQL.Форма.Форма.Форма(119,26)}: Переменная не определена (ЭтотОбъект)
	Для Каждого Реквизит Из <<?>>ЭтотОбъект.ПолучитьРеквизиты("Объект") Цикл
{ВнешняяОбработка.КонсольSQL.Форма.Форма.Форма(134,26)}: Переменная не определена (ЭтотОбъект)
	Для Каждого Реквизит Из <<?>>ЭтотОбъект.ПолучитьРеквизиты("Объект") Цикл
6. Bukaska 128 07.04.18 20:41 Сейчас в теме
(4)ВЫ бы хоть смотрели когда скачивали, в конце 2016 года и платформа была другая. Конечно пытаться открыть на текущей платформе наработке двухгодовой давности, когда правило программирования на каждом релизе меняется и выдает очередные заморочки. Сочувствую.. Обратитесь в техподдержку. Впредь смотрите дату публикации
7. LavinVadik 101 08.04.18 02:48 Сейчас в теме
дата публикации тут ни при чем,
разобрался, че к чему

сделана под УФ

на УФ тонком клиент на БП 30 и ЗУП 31 - работает


на УПП в обычных формах не работает. пробывал открыть в УФ УПП тоже не взлетела.








(4)
5. Kaspirovsky 07.04.18 07:38 Сейчас в теме
в толстом клиенте пробовал?
Оставьте свое сообщение