Главная Случайная страница


Полезное:

Как сделать разговор полезным и приятным Как сделать объемную звезду своими руками Как сделать то, что делать не хочется? Как сделать погремушку Как сделать так чтобы женщины сами знакомились с вами Как сделать идею коммерческой Как сделать хорошую растяжку ног? Как сделать наш разум здоровым? Как сделать, чтобы люди обманывали меньше Вопрос 4. Как сделать так, чтобы вас уважали и ценили? Как сделать лучше себе и другим людям Как сделать свидание интересным?


Категории:

АрхитектураАстрономияБиологияГеографияГеологияИнформатикаИскусствоИсторияКулинарияКультураМаркетингМатематикаМедицинаМенеджментОхрана трудаПравоПроизводствоПсихологияРелигияСоциологияСпортТехникаФизикаФилософияХимияЭкологияЭкономикаЭлектроника






Встроенные функции MySQL





■ В MySQL предлагает широкий выбор встроенных операторов и функций, которые могут оказаться полезными при создании запросов. Большинство этих функций предназначено для использования в выражениях SELECT и WHERE. Существуют также некоторые специальные функции группировки для использования в выра­жении GROUP BY. Число доступных для использо­вания функций очень велико, поэтому мы рассмотрим только наиболее полезные из них.

Здесь следует сделать одно важное замечание. В MySQL любое выражение, содержащее NULL, оценивается как NULL.

 

Операторы

В MySQL используются три главных типа операторов: знаки арифметических операций, операторы сравнения и логические операторы. Арифметические операции

В MySQL используются обычные арифметические операции: сложение (+), вычитание (-), умножение (*) и деление (/). Деление на нулевое значение дает безопасный результат NULL.

Операторы сравнения

При работе с операторами сравнения необходимо помнить о том, что, за ис­ключением нескольких особо оговариваемых случаев, сравнение чего-либо со зна­чением NULL дает в результате NULL.

Рассмотрим операторы сравнения. Наиболее часто используемые из них приведены в таблице


Логические операторы MySQL поддерживает все обычные логические операции, которые можно ис­пользовать в выражениях объединения. Логические выражения в MySQL могут принимать значения 1 (истина), 0 (ложь) или NULL. Кроме того, MySQL интер­претирует любое ненулевое значение, отличное от NULL, как значение "истина". Некоторые из таблиц истинности, содержащие значения NULL, немного отли­чаются от того, что можно было бы ожидать. Логические операторы приведены в таблице

 

 


 

 

 

 

Типы таблиц MySQL

Проектирование системы управления базой данных, подобно многим другим задачам проектирования, подразумевает множество компромиссных решений. На­пример, многие задачи базы данных должны обеспечиваться решениями, предпо­лагающими безопасность транзакций, но такие решения требуют больше времени для их выполнения, больше дискового пространства и памяти. Создатели MySQL делегировали выбор некоторых из компромиссных решений вам, разработчику базы данных, предложив на выбор несколько типов таблиц. В зависимости от при­ложения вы можете выбрать один из типов таблиц, обеспечивающих безопасность транзакций, или же с помощью другого типа обеспечить более высокую произво­дительность, не гарантируя безопасность транзакций. Так или иначе, необходимо знать, какие компромиссы вы при этом допускаете.

Вы уже могли обратить внимание, что типы таблиц мы называли механизмами хранения. Это отражает тот факт, что некоторые из типов таблиц используют большие самостоятельные фрагменты программного кода со своими системами кэширования, индексации, блокировки и доступа к диску. Это отражает также суть назначения базы данных: хранение информации.

Представьте на минуту, что вы имеете дело с базой данных, содержащей ин­формацию о банковских счетах. Если необходимо перевести 1000 долларов с од­ного счета на другой, вам потребуется как минимум два запроса SQL: один, чтобы снять 1000 долларов с одного счета, и еще один, чтобы добавить 1000 долларов ко второму счету. Существует опасность (например, в случае отключения элек­тропитания), что один запрос завершит свою работу, а второй — нет. Было бы очень желательно, чтобы в подобных случаях завершиться успешно могли либо оба из пары запросов, либо ни один из них, чтобы данные в базе данных остались согласованными.

Чтобы обеспечить безопасность транзакций, таблицы должны предусматри­вать возможность указания того, что некоторый набор запросов должен тракто­ваться как одна неделимая единица — транзакция. Транзакция должна либо завер­шиться полностью, либо база данных должна выполнить откат, т.е. возвратиться к тому же состоянию, которое имело место до начала выполнения транзакции.

К типам таблиц, доступных в MySQL, относятся следующие:

■ ISAM

■ MylSAM

■ InnoDB

■ BerkeleyDB (BDB)

■ MERGE

■ HEAP

Безопасность транзакций обеспечивают таблицы InnoDB и BerkeleyDB. Остальные (ISAM, MylSAM, MERGE и HEAP) безопасность транзакций не обеспечивают.

Таблицы ISAM

Таблицы ISAM включены в MySQL исключительно для поддержки совмести­мости. Их функциональные возможности полностью поддерживаются таблицами MyISAM.

Таблицы ISAM предлагают быстрый, но не защищенный с точки зрения тран­закций, механизм хранения данных. Практически все, что можно сказать о табли­цах ISAM, будет верно и для таблиц MyISAM, но относящиеся к более старому стандарту таблицы ISAM имеют ряд ограничений.

Улучшения, предложенные в таблицах MyISAM, включают следующее.

■ Мобильность таблиц. Таблицы, сохраненные на диске или другом носителе, можно загрузить в другую систему, поддерживающую MySQL, независимо от платформы. Для таблиц ISAM это не так.

■ Поддержка очень больших таблиц. Размеры таблицы ISAM имеют жесткое ограничение — 4 Гбайт. MyISAM позволяет создавать таблицы настолько большие, насколько большими им позволяет быть операционная система, в которой выполняется MySQL. Это может оказаться важным небольшому числу пользователей, но это означает, что к выбору операционной (и фай­ловой) системы следует отнестись весьма внимательно. Многие файловые системы имеют ограничение 2 Гбайт для размера файла. (Обратите вни­мание на то, что это ограничение можно на самом деле обойти, используя таблицы MERGE.)

■ Более эффективное использование дискового пространства. Сокращен объ­ем пустого пространства и уменьшена фрагментация.

■ Меньшие ограничения на ключи. Таблицы ISAM допускают использование 16 ключей на таблицу и максимальную длину ключа по умолчанию 256 байт. Таблицы MyISAM допускают 64 ключа на таблицу и максимальную длину ключа по умолчанию 1024 байт.

Таблицы ISAM должны восприниматься как нежелательные.

Таблицы MyISAM

Таблицы MyISAM обеспечивают очень быстрый, но не защищенный с точки зрения транзакций, механизм хранения данных. Они обеспечивают высокую про­изводительность в большинстве ситуаций даже при наличии ошибок в структуре базы данных

Таблицы MyISAM могут быть одного из трех типов: динамические, стати­ческие или сжатые. Таблица автоматически становится динамической или ста­тической в зависимости от определения ее столбцов. Сжатые таблицы должны создаваться специально с помощью средства myisampack.

Таблицы со строками фиксированной длины будут статическими, а таблицы со строками переменной длины — динамическими.

Статическая таблица имеет целый ряд преимуществ. Она обеспечивает бо­лее быстрый поиск по сравнению с динамической или сжатой таблицей. Для базы данных очень легко извлечь конкретную запись на основе индекса, когда каждая запись находится на определенном расстоянии от начала файла. Данные проще кэшировать. Менее вероятно возникновение серьезных повреждений в слу­чае отказа системы — возможности восстановления данных, как правило, легко обеспечивают восстановление всех строк, кроме одной поврежденной.

Недостатком статических таблиц является то, что размещение реальных дан­ных в столбцах фиксированного размера, очевидно, не способствует экономии дискового пространства. Это может быть не слишком большой ценой для данных варьирующих в небольших пределах (например, для имен пользователей), но мо­жет оказаться неприемлемым для данных, которые сильно варьируют в размерах.

Динамические таблицы в рамках MySQL требуют более сложных методов управления. В этом случае и кэширование, и поиск, и восстановление записей для механизма хранения оказываются не такими простыми задачами. Причиной отчасти является то, что данные варьируют в размерах, но также и то, что они могут оказаться фрагментированными. Если строка изменяется и становится боль­ше, часть данных останется на исходном месте, а часть может сохраниться в виде нового фрагмента где-нибудь в другом месте файла. Это значит, что сегмент фай­ла, помещенный в кэш операционной системой, не обязательно будет содержать все части соответствующей строки. Могут возникнуть трудности и при восста­новлении повреждений, поскольку в случае потери фрагментов или ссылок будет совсем не очевидно, каким строкам должны принадлежать распознанные части данных.

Таблицы InnoDB

Следующим типом таблиц, который мы будем обсуждать, является тип InnoDB. Данный тип представляет собой механизм хранения, обеспечивающий быструю работу и безопасность транзакций. Таблицы InnoDB предлагают следующие возможности.

■Транзакции.

■Блокировка на уровне строк. Это означает, что при выполнении запроса недоступной для других пользователей будет только строка, используемая в данном запросе. Большинство других механизмов хранения (за исключе­нием BDB) предлагает блокировку на уровне таблиц — пока один процесс обновляет таблицу, таблица не доступна другим процессам.

■Поддержка внешних ключей. Примеры из предыдущих глав, в которых ис­пользуются внешние ключи, не будут работать с другими типами таблиц.

■Согласованное неблокирующее чтение в операторах SELECT. (Эта идея позаимствована из Oracle.)

Механизм InnoDB имеет свои собственные опции настройки, отдельный ката­лог и свои особенности хранения данных. В то время как механизм MyISAM для хранения каждой таблицы использует отдельный файл, механизм InnoDB хранит все таблицы и индексы в специальном пространстве таблиц, и это означает, что содержимое одной таблицы может размещаться в нескольких файлах. Это дает возможность механизму InnoDB создавать очень большие таблицы, которые не обязаны подчиняться каким-либо ограничениям на размеры файлов, налагаемым операционной системой. Однако, следует учитывать то, что для хранения одного и того же объема полезной информации таблицы InnoDB используют значительно больше дискового пространства, чем таблицы MylSAM.

InnoDB является одной из самых быстрых систем, обеспечивающих безопас­ность транзакций, но обеспечение этой безопасности требует жертв. Для большин­ства реальных сценариев таблицы MyISAM будут быстрее, но разница, в общем, не будет слишком впечатляющей.


Тема 5. Язык HTML как средство внешнего представления данных.

 

Несмотря на то, что в настоящее время существует огромное количество программных продуктов, которые позволяют создавать сайты в режиме "What you see and what you get" (Что видите, то и получаете), после сохранения документа в качестве web-страницы получается html файл. HTML файл - это обычный текстовый документ, который может быть написан в любом текстовом редакторе (например, блокнот) и сохранён с расширением *.htm или *.html. Многие программы, которые позволяют создавать сайты по готовым шаблонам, имеют встроенный html редактор. Знание html необходимо для более полного контроля всех элементов, которые располагаются на вашей странице (текст, рисунки, таблицы, flash эффекты, java аплеты…), а также для внесения каких-либо исправлений в ходе обслуживания сайта.

HTML (HyperText Markup Language)- язык гипертекстовой разметки. Он позволяет:-публиковать электронные документы с заголовками, текстом, таблицами, списками, фотографиями и т.д. в сети интернет;

-загружать электронную информацию с помощью щелчка мыши на гипертекстовой ссылке;

-разрабатывать формы для выполнения операций с удаленными службами, для использования в поиске информации, резервировании, заказе продуктов и т.д;

-включать электронные таблицы, видеоклипы, звуковые фрагменты и другие приложения непосредственно в документы

 

Date: 2016-07-25; view: 762; Нарушение авторских прав; Помощь в написании работы --> СЮДА...



mydocx.ru - 2015-2024 year. (0.006 sec.) Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав - Пожаловаться на публикацию