Форум программистов, компьютерный форум, киберфорум
amd48
Войти
Регистрация
Восстановить пароль
Оценить эту запись

MS Access. Альтернативный SQL-редактор

Запись от amd48 размещена 30.06.2020 в 11:37
Метки ms access

Здесь SQL-редактор я размышлял вслух и спрашивал всякие советы об этом своём творении. Решил сухой остаток перенести в блог. Он-то уже никуда не уплывёт.

Кратко, что это такое и зачем.
В MSA встроенный редактор запросов имеет много ограничений в использовании и интерфейс, не превосходящий возможностей notepad.exe. А после работы в серьёзных средах (PL/SQL Developer для Oracle или MS SQL Server Management Studio) MSA просто удручает. И вот, под этим впечатлением сделана попытка воспроизвести нечто подобное. В редакторе используется RTF-форматирование, которое стало доступно в MSA 2007. В 2003 и более ранних версиях он работать не будет. В приведённой теме можно найти его ещё не-RTF-версию.
Нажмите на изображение для увеличения
Название: Безымянный.png
Просмотров: 81
Размер:	24.3 Кб
ID:	6320
Редактор может быть полезен тем, кто предпочитает писать запросы руками, а не мышкой в конструкторе. Особенно это касается вложенных запросов, с использованием UNION и прочих, где конструктор не годится.
Этот редактор - MSA-форма fSQLEditor + модуль mSQLEditor. Их можно импортировать в любую вашу базу и работать с её таблицами и запросами. В приложенной базе есть форма frmExportForm, позволяющая одним кликом экспортировать редактор в вашу БД. Редактор будет доступен даже mde-базах, где стандартная среда разработки отключена.
Возможности:
- зарезервированные SQL-слова переводятся к верхнему регистру и окрашиваются в синий цвет
- зарезервированные VBA-слова переводятся к Регистру и окрашиваются в бирюзовый цвет. И те и другие слова перечислены в массивах sSQL и sVBA в процедуре ColorRTF модуля mSQLEditor. Я перечислил там всё, что смог вспомнить. Можете дополнить своими при желании
- текстовые строки внутри кавычек и апострофов, а так же числа окрашиваются в красный цвет
- строки, начинающиеся на "--" считаются комментариями и окрашиваются в зелёный цвет. По задумке эти строки перед выполнением отбрасываются. Не всегда срабатывает
- исполнять можно весь текст запроса целиком (курсор ничего не выделяет) или только выделенный фрагмент. Клавишами Shift+F7
после выполнения запроса:
- в нижней части формы выводится таблица с результатом запроса, если это SELECT.
- на вкладке "интерпретатор" выводится отформатированный самим MSA запрос, если он синтаксически корректен. Это текст запроса "qTemp", который создаётся каждый раз при выполнении запроса из редактора
- подстановка имён таблиц и запросов текущей БД. Вызывается кликом ПКМ:
Нажмите на изображение для увеличения
Название: Безымянный1.png
Просмотров: 77
Размер:	24.6 Кб
ID:	6321
- подстановка имён полей после точки. Вызывается кликом ПКМ:
Нажмите на изображение для увеличения
Название: Безымянный2.png
Просмотров: 74
Размер:	26.2 Кб
ID:	6322
- Навигатор по сохранённым запросам БД (кнопка "запросы БД" на форме):
Нажмите на изображение для увеличения
Название: Безымянный3.png
Просмотров: 75
Размер:	19.1 Кб
ID:	6323
- Тип запроса отмечается соответствующей буквой:
s - select
t - TRANSFORM
d - delete
u - update
i - insert
c - create
ↀ - union
- в навигаторе можно сохранить интерпретированный запрос, добавив к нему текстовый комментарий
- можно открыть встроенный редактор запросов, если он доступен
- любой текст, набранный в редакторе, можно сохранить на диск в текстовый файл с расширением sql (см. кнопки слева вверху формы). А потом открыть в редакторе. При этом файл может содержать несколько запросов и комментарии. Выполнять его содержимое вы, всё равно, будете только выделенными фрагментами
Вложения
Тип файла: zip sql_editorRTF.zip (241.0 Кб, 73 просмотров)
Размещено в VBA
Просмотров 79 Комментарии 0
Всего комментариев 0
Комментарии
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2020, vBulletin Solutions, Inc.