Главная » Просмотр файлов » Хомоненко А.Д., Цыганков В.М., Мальцев М.Г. - Базы данных. Учебник для высших учебных заведений (6-е изд.) - 2009

Хомоненко А.Д., Цыганков В.М., Мальцев М.Г. - Базы данных. Учебник для высших учебных заведений (6-е изд.) - 2009 (1084484), страница 66

Файл №1084484 Хомоненко А.Д., Цыганков В.М., Мальцев М.Г. - Базы данных. Учебник для высших учебных заведений (6-е изд.) - 2009 (Хомоненко А.Д., Цыганков В.М., Мальцев М.Г. - Базы данных. Учебник для высших учебных заведений (6-е изд.) - 2009) 66 страницаХомоненко А.Д., Цыганков В.М., Мальцев М.Г. - Базы данных. Учебник для высших учебных заведений (6-е изд.) - 2009 (1084484) страница 662018-01-12СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла (страница 66)

10.26).5. Ввести нужные таблицы/запросы в схему запроса-источника записей,получив тем самым формируемый запрос, возможный вид которого показан на рис. 10.27.Часть 3. Современные СУБД и их применение316ИШДобавление таблицыШТаблицы I цР Запросы j |р) Таблицы и запросы |ДобавитьЗакрытьЗаказаноЗаказыКлиентыПоставщикиСотрудникиТипыТоварыРис. 10.26. Окно добавления таблиц и / и л и запросовgjp Инструкция SQL : построт"ель запросовBSDТоварыПоставщикиКоаТовараМаркаКодПоставщКодТипаjiJКодПосганцНазваниеОбращаться!ДолжностьПоле; КодТовараИмя таблицы: ТоварыСортировка:Вывод наэкрай:мУсловие отбора;МаркаТоварыНазваниеПоставщикиимТелефонПоставщики—и•ГШРис.

10.27. Вид формируемого запросаОт этого запроса легко перейти к SQL-выражению одним из описанныхспособов, например, по команде В и д | Р е ж и м S Q L ( V i e w | S Q L ) .10. СУБД Access 2002317SQL вмакрокомандахМакрокоманды входят в состав макросов, которые используются для автоматизации в ы п о л н е н и я часто повторяющихся действий в работе с БД.Макрос представляет собой одну или несколько макрокоманд с аргументами.М а к р о с ы в ы з ы в а ю т с я из окна Б Д или автоматически при н а с т у п л е н и иопределенных событий.

В последнем случае требуется связать макрос сн у ж н ы м с о б ы т и е м . С о б ы т и е м , по к о т о р о м у в ы з ы в а е т с я макрос, м о ж е тбыть, например, н а ж а т и е кнопки в области экранной ф о р м ы или открытие окна Б Д .Наряду с выполнением некоторых действий над объектами Б Д макросымогут вызывать другие макросы, программы на Visual Basic и внешние приложения.И з множества макрокоманд (около 50) с S Q L непосредственно связаныдве макрокоманды: 3 a n y c i < 3 a n p o c a S Q L ( R u n S Q L ) и О т к р ы т ь З а п р о с(OpenQuery).Макрокоманда 3anycK3anpocaSQLзапускает запрос на изменение или управляющий запрос Access с помощью соответствующей инструкции SQL.

Этамакрокоманда делает возможным выполнение действий в макросе без предварительного создания сохраненных запросов. С помощью макрокомандыможно выполнять и сохраненные запросы.Запросами на изменение я в л я ю т с я и н с т р у к ц и и S Q L (подраздел 3.9), реализующие следующие функции: добавление ( I N S E R T I N T O ) , удаление( D E L E T E ) , создание т а б л и ц ы ( S E L E C T . . .

I N T O ) и обновление ( U P D A T E ) .Управляющими запросами являются инструкции SQL, выполняющие следующие функции: создание таблицы (CREATE TABLE), изменение таблицы( A L T E R T A B L E ) , удаление таблицы ( D R O P T A B L E ) , создание индекса( C R E A T E I N D E X ) и удаление индекса ( D R O P I N D E X ) .Единственнымиобязательнымаргументоммакрокоманды3anycx3anpocaSQLявляется инструкция SQL. Максимальная длина инструкции S Q L составляет 255 символов. Д л я выполнения инструкции S Q L длиной более 255 символов следует вызвать метод R u n S Q L объекта DoCmd впрограмме VBA. В программах VBA допускается использование инструкцийS Q L длиной до 32768 символов.Аргумент м а к р о к о м а н д ы в виде текста S Q L - и н с т р у к ц и и вводится вручную в окне ввода м а к р о к о м а н д ы и л и копируется из окна SQL, что частоудобнее.

Д л я в ы п о л н е н и я последней м а н и п у л я ц и и можно поступить так:войти в режим Конструктора запросов, создать запрос, получить эквивал е н т н ы й оператор SQL, в ы д е л и т ь его и поместить в б у ф е р обмена. Пример готовой к в ы п о л н е н и ю м а к р о к о м а н д ы с оператором S Q L приведен нарис. 10.28.Часть 3. Современные318СУБД и ихприменениетшшШ. Макрос! : макросМакрокоманда3anycK3anpocaSQL1Примечание'L|——Аргументы макрокомандыИнструкция SQLSELECT DISTINCTROW TOFСтолбец для ввода примечаний.Рис. 10.28.

Макрокоманда с оператором SQLМакрокоманда ОткрытьЗапрос позволяет открывать запрос на выборкуили перекрестный запрос (в режимах Таблицы, Конструктора и Предварительного просмотра), запускать запрос на изменение или ввод данных. Вызов ее эквивалентен нажатию кнопки О т к р ы т ь ( O p e n ) или К о н с т р у к т о р( D e s i g n ) в окне базы данных после выбора запроса на вкладке З а п р о с ы(Queries).В макрокоманде задаются три аргумента: имя запроса, режим и режим данных. Первый аргумент задает имя открываемого запроса и является обязательным. Второй аргумент задает режим открытия запроса.

Допустимымизначениями являются: «Таблица» (используется по умолчанию), «Конструктор» и «Просмотр».Третий аргумент описывает режим ввода данных в запрос. Аргумент можно применять к запросам, открываемым в режиме таблицы. Допустимые значения: «Добавление» (можно вводить новые записи, нельзя изменять существующие), «Изменение» (можно вводить новые и изменять существующиезаписи; действует по умолчанию) и «Только чтение» (разрешается просматривать записи).Для ускоренного создания макроса с этой макрокомандой можно воспользоваться следующим приемом. Выбрать запрос в окне базы данных и переместить с помощью мыши в строку макрокоманды в макросе. При этом в макросавтоматически добавляется макрокоманда О т к р ы т ь З а п р о с , открывающаязапрос в режиме таблицы.Для вызова макрокоманды О т к р ы т ь З а п р о с в программе VBA используют метод O p e n Q u e r y объекта D o C m d .10.

СУБД Access 2002319SQL в программахна VBAНапомним, что программы на VBA, как и макросы, предназначены для автоматизации выполнения повторяющихся операций над объектами БД Access.Д л я выполнения программы следует запустить содержащую ее процедуру Subи л и ф у н к ц и ю F u n c t i o n .

П р о г р а м м а з а п и с ы в а е т с я в п р о ц е д у р е к а к н а б о р ин-струкций и методов, с помощью которых выполняются требуемые действия.Процедуры, как известно, хранятся в модулях и выполняются в ответ на события или вызываются из выражений, макросов и других процедур.В Access существуют следующие способы запуска программ VBA:• включение программы в процедуру обработки события;• вызов функции в выражении;• вызов процедуры Sub в другой процедуре или в окне отладки;• выполнение макрокоманды З а п у с к П р о г р а м м ы ( R u n C o d e ) в макросе.Например, чтобы вызвать программу выполнения определенных действийпри открытии формы, нужно включить ее текст в процедуру обработки события Н а ж а т и е к н о п к и ( C l i c k ) для кнопки, при нажатии которой будет открываться форма.Ф у н к ц и и применяются в выражениях, определяющих вычисляемые поляв формах, отчетах или запросах.

Выражения используются для указания условий в запросах и фильтрах, а также в макросах, в инструкциях и методахVBA, а также в инструкциях SQL. В процедуру Sub можно включать общедоступные VBA-подпрограммы, вызываемые из других процедур.Рассмотрим выполнение запроса к базе данных с помощью инструкцийS Q L в программе на Visual Basic для приложений.В запросе производится отбор в базе данных записей, удовлетворяющихопределенным условиям (запрос на выборку), либо выдается инструкция навыполнение указанных действий с записями, удовлетворяющими определенным условиям (запрос на изменение).Если запрос S Q L используется для возвращения данных, ядром базы данных Microsoft J e t создается объект R e c o r d s e t .

После создания этого объекта можно использовать методы поиска ( F i n d ) и перемещения по записямнабора.Существуют следующие способы выполнения запросов:• вызов метода E x e c u t e (для выполнения запросов S Q L на изменение);• создание и выполнение специального объекта Q u e r y D e f ;• и с п о л ь з о в а н и е инструкции SQL в качестве аргумента методаOpen Recordset;• в ы п о л н е н и е методаOpenRecordsetQueryDef;• вызов методовRunSQLиOpenQuery.для существующего объектаЧасть 3. Современные СУБД и их применение320Метод E x e c u t e используется, если требуется выполнить такое изменениев БД, при котором не возвращаются записи.

Это, например, операции вставки или удаления записей.В качестве простейшего примера приведем команды Visual Basic для приложений выполнения запроса на изменение, в котором выполняется обновление записей таблицы «Должности», не имеющих значение в столбце ISBN.При возникновении ошибки все изменения отменяются.Dim strSQL as StringstrSQL = «DELETE FROM Должности WHERE ISBN IS NULL»dbsBiblio.Execute strSQL, dbFailOnErrorОбъект Q u e r y D e f представляет собой сохраненное определение запроса вбазе данных.

Его можно рассматривать как откомпилированную инструкциюSQL.Приведенная ниже программа выполняет создание нового объекта Q u e r y D e f ,после чего соответствующий запрос открывается в режиме таблицы.Sub NewQueryQ' Объявление переменныхDim dbs As Database, qdf As QueryDef, strSQL As String' Установка значения переменной типа Database,' представляющей текущую базу данныхSet dbs = CurrentDb' Строка запросаstrSQL = «SELECT * FROM Сотрудники WHERE[ДатаНайма ]>= # 1-1 -95 # »' Создание нового объекта QueryDefSet qdf = dbs.CreateQueryDef(«HoebieCompydHUKU»,strSQL)' Открытие запросаDoCmd.OpenQueryqdf.NameEnd SubМетод OpenRecordSet используется, чтобы открыть объект типа RecordSetдля выполнения последующих операций над ним.В следующей процедуре с помощью инструкции SQL создается объектRecordset типа динамического набора записей.

В предложение WHERE инструкции SQL включена функция Y e a r , определяющая отбор заказов, размещенных в 1998 году.SubOrders98()Dim dbs As Database, rstAs Recordset, strSQL As String10. СУБД Access 2002321Dim fid As FieldSet dbs = CurrentDbstrSQL = «SELECT DISTINCTROW«FROM Заказы WHERESet rst = dbs.OpenRecordset(strSQL,rst.MoveLastDebug.Printrst.RecordCountEnd SubЗаказ, ДатаРазмещения« &((Уеаг([ДатаРашещения])=1998));»dbOpenDynaset.)Метод R u n S Q L выполняет макрокоманду 3 a n y c K 3 a n p o c a S Q L ( R u n S Q L )в программе VBA.

Характеристики

Список файлов книги

Свежие статьи
Популярно сейчас
Зачем заказывать выполнение своего задания, если оно уже было выполнено много много раз? Его можно просто купить или даже скачать бесплатно на СтудИзбе. Найдите нужный учебный материал у нас!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
6418
Авторов
на СтудИзбе
307
Средний доход
с одного платного файла
Обучение Подробнее