|
Программирование >> Программный интерфейс приложений
правильно преобразовывались окончания строк. (ОС UNIX использует для обозначения окончания строки перевод строки, ОС Мае - возврат каретки, а ОС Windows - оба символа каретки и перевод строки.) Оператору load data МОЖНО сообщить, какой тип завершения строки ему следует ожидать, но под ОС UNIX проще работать с файлом, если он сам содержит символы окончания строк. После того как файл передан, проверьте, нет ли в конце файла пустых строк. В случае, если они присутствуют, их необходимо удалить. В противном случае они могут привести к несоответствию форматов. При сохранении данных в плоский файл значения, имеющие пробелы, могут быть офаничены кавычками. Для того чтобы их исключить при зафузке данных в базу, необходимо указать параметр fields enclosed by для оператора load data или опцию -fields -enclosed-by для утилиты mysqlimport. Параметры оператора load data можно найти в приложении Г, Синтаксис SQL . Что дальше? Теперь нам кое-что известно о работе СУБД MySQL. Мы знаем, как создавать базу данных и ее таблицы, умеем заносить данные в эти таблицы, производить различные варианты выборки, модификации и удаления. Но это только начало. Это можно заметить по состоянию базы данных с примером Мы только что создали базу данных и ее таблицы, занесли туда начальные данные. Бьши рассмотрены методы написания запросов, без которых невозможно обойтись при работе с базой данных. К примеру, сейчас у нас есть на вооружении достаточно удобные способы ввода запросов, которые необходимы для ввода оценок в проекте учета успеваемости или добавления записей о новых членах Исторической Лиги . Но нет простых методов редактирования существующих записей. Неизвестно также, как печатать или отображать в интерактивном режиме списочный состав Исторической Лиги . Эти и другие проблемы будут рассмотрены в последующих главах, в частности в главах 7 и 8. То, к изучению какой главы перейдет сейчас читатель, зависит от того, чем он интересуется. Если он интересуется продолжением работы, начатой в проекте Историческая Лига , и учетом успеваемости, то рекомендую перейти ко второй части книги, в которой описывается профаммирование в СУБД MySQL. Часть III сможет удовлетворить интерес тех, кто интересуется проблемами администрирования. Но я рекомендую сначала набраться опыта в работе с СУБД MySQL, прочитав до конца главы из части I. В них описывается, как обрабатываются данные из баз данных, глубже проработан синтаксис и использование оператора SQL, приведены методы оптимизации запросов. Хорошие знания по этой теме станут фундаментом для дальнейшего использования СУБД MySQL независимо от контекста ее применения - работаете ли вы с mysql, пишите ли свои собственные профаммы или выполняете функции админисфатора. Работа с данными в MySQL Практически все операции, которые производятся в СУБД MySQL, осуществляются над данными. Как бы там ни было, по определению, основное назначение СУБД заключается в том, чтобы управлять данными. Даже самая простая команда select 1 предполагает вычисление выражения и получение целочисленного результата. Все данные в MySQL характеризуются своим типом. Так, 37.4 - число (тип number), а аЬс - строка (тип string).Типы данных определяются на этапе создания таблицы с помощью оператора create table. CREATE TABLE my table { int col INT, /* столбец целого типа */ str col CHAR(20), /* столбец строкового типа */ date col DATE, /* столбец типа DATE */ > Иногда типы данных задаются явным способом, как это происходит при ссылке на данные типа литералов при передаче или приеме данных функциями. INSERT INTO my table {int col, str col, date col) VALUES(14,CONCAT( a , b ) , 19990115) Здесь оператор insert выполняет следующие операции. Присваивает значение 14 целому столбцу int col. Передает строковые данные а и Ь функции concat (), которая возвращает значение аЬ . Потом это значение присваивается столбцу str col. Присваивает целое значение 19990115 столбцу date col. Как видно, при этом присвоении имеет место несоответствие типов. В таком случае СУБД MySQL автоматически преобразует целое число 19990115 в дату 1999-01-15 . Здесь видно, как работает автоматическое преобразование типов данных в СУБД MySQL. Для эффективного использования СУБД MySQL необходимо глубокое понимание процессов обработки данных в СУБД MySQL. В этой главе описаны типы данных, с которыми работает СУБД MySQL, и обсуждаются проблемы, возникающие при использовании этих типов данных. Все типы данных, которые может обрабатывать СУБД MySQL, включая пустое значение (null). Специальные типы данных СУБД MySQL и свойства, которыми они обладают. Некоторьге типы данных СУБД MySQL как, например, тип char, являются общими ДЛЯ всех существующих СУБД. Другие, такие как целочисленные значения auto lNCREMENT и данные календарного типа TIMESTAMP, имеют некоторые особенности, которые необходимо хорощо понимать. Это поможет избежать непредвиденных результатов. Правильный выбор типов данных в таблицах. Необходимо хорощо понимать сам процесс выбора правильного типа данных на этапе построения таблиц. Правила вычисления выражений, принятые в СУБД MySQL. СУБД MySQ предлагает широкий диапазон операторов и функций, которые можно использовать в процессе поиска, отображения и манипулирования данными. Правила вычисления выражений включают в себя правила преобразования типов данных, когда данные одного типа можно использовать в контекстном поиске данных другого типа. Важно понимать, как происходит преобразование типов данных; некоторые преобразования бессмысленны и в результате получаем абсолютно бессмысленные значения. Присвоение строки 13 в целочисленном столбце даст в результате значение 13, а присвоение строки аЬс в этом же самом целочисленном столбце даст в результате значение О, так как строка аЬс никак не похожа на число. Возможны варианты и похуже; операция может нанести непоправимый вред, такой как удаление или модификация всех строк таблицы, тогда когда вы намеревались преобразовать только несколько строк. Дополнительная информация о типах данных СУБД MySQL, операторах и функциях содержится в приложениях Б, Типы столбцов , и В, Операторы и функции .
|
© 2006 - 2024 pmbk.ru. Генерация страницы: 0
При копировании материалов приветствуются ссылки. |