Главная Свежие Последние Лучшие Контактная информация  
 
 

Поиск: SELECT (174)


Перенос на другие системы » Регулярные выражения в MySQL
G Регулярные выражения в MySQL

Регулярные выражения (regex, regexp) представляют собой мощный способ выполнения сложного поиска.

В MySQL используется расширенная версия предложенной Генри Спенсером (Henry Spencer) реализации регулярных выражений, которая ориентирована на соответствие POSIX 1003.2.
теги: SELECT
 


Перенос на другие системы » Различия между разными потоковыми пакетами
E.6 Различия между разными потоковыми пакетами
Работа MySQL в значительной степени зависит от используемого потокового пакета. Таким образом, при выборе хорошей платформы для MySQL потоковый пакет играет очень важную роль.
теги: Linux
 


Перенос на другие системы » Методы блокировки
E.4 Методы блокировки
В настоящее время MySQL поддерживает только табличную блокировку для таблиц типов ISAM/MyISAM и HEAP, страничную блокировку для таблиц BDB и строковую блокировку для таблиц InnoDB (see section 5.3.1 Как MySQL блокирует таблицы). Для таблиц MyISAM можно произвольным образом сочетать команды INSERT и SELECT без блокировок, поскольку поддерживается управление версиями (Versioning).
теги: MyISAM, DELETE, SELECT
 


Перенос на другие системы » Использование журналов для определения причин ошибок в mysqld
E.1.5 Использование журналов для определения причин ошибок в mysqld
Обратите внимание: перед запуском mysqld с --log необходимо проверить все используемые таблицы с помощью myisamchk (see section 4 Администрирование баз данных).

Если демон mysqld умрет или зависнет, следует запустить mysqld с опцией --log. Если аварийное завершение mysqld снова повторится, то можно исследовать часть журнала, относящуюся к запросу, убившему mysqld.
теги: SELECT, MyISAM
 


Привнесенные программы » Разработчики MySQL AB
C.1 Разработчики MySQL AB
Здесь представлен список разработчиков, занимающихся в настоящее разработкой программного обеспечения сервера баз данных MySQL в компании MySQL AB или занимавшихся этой разработкой ранее, приблизительно в том порядке, в котором они начинали работать с нами. После личных данных каждого разработчика следует небольшой список задач, за которые он отвечал, или выполненных им работ.
теги: MyISAM
 


Привнесенные программы » Веб-инструменты
B.3 Веб-инструменты
http://www.mysql.com/Downloads/Contrib/mod_mysql_include_1.0.tar.gz Модуль Apache для включения HTML-кода из запросов MySQL в ваши страницы и выдачи обновленных запросов. Первоначально написано для реализации простой быстрой малозатратной системы ротации баннеров. Автор Саша Пачев (Sasha Pachev).
http://htcheck.sourceforge.net/ htCheck - это программа контроля URL с MySQL в качестве базы данных. Исследуемые URLы в дальнейшем могут быть включены в запросы, используя SQL, для извлечения информации различного типа, например, недействительных ссылок. Автор Габриеле Бартолини (Gabriele Bartolini).
теги: HTML, Perl
 


Проблемы и распространенные ошибки » Проблемы, относящиеся к временным (TEMPORARY) таблицам
A.6.3 Проблемы, относящиеся к временным (TEMPORARY) таблицам

Ниже перечислены ограничения, относящиеся к временным таблицам.

Временной может быть только таблица типа HEAP, ISAM, MyISAM или InnoDB.
теги: InnoDB, SELECT, MyISAM
 


Проблемы и распространенные ошибки » Как изменить порядок столбцов в таблице
A.6.2 Как изменить порядок столбцов в таблице

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

SELECT col_name1, col_name2, col_name3 FROM tbl_name;

возвратит столбцы в порядке col_name1, col_name2, col_name3, тогда как:

SELECT col_name1, col_name3, col_name2 FROM tbl_name;

возвратит столбцы в порядке col_name1, col_name3, col_name2.
теги: SELECT, INSERT
 


Проблемы и распространенные ошибки » Проблемы со сравнением чисел с плавающей точкой
A.5.7 Проблемы со сравнением чисел с плавающей точкой
Числа с плавающей точкой иногда служат источником неприятностей, поскольку эти числа архитектурно хранятся в компьютере не как точные числа. То, что обычно мы видим на экране, не является точным значением числа.

Поля типов FLOAT, DOUBLE и DECIMAL следующие.

CREATE TABLE t1 (i INT, d1 DECIMAL(9,2), d2 DECIMAL(9,2));
INSERT INTO t1 VALUES (1, 101.40, 21.40), (1, -80.00, 0.00),
(2, 0.00, 0.00), (2, -13.20, 0.00), (2, 59.60, 46.40),
(2, 30.40, 30.40), (3, 37.00, 7.40), (3, -29.60, 0.00),
(4, 60.00, 15.40), (4, -10.60, 0.00), (4, -34.00, 0.00),
(5, 33.00, 0.00), (5, -25.80, 0.00), (5, 0.00, 7.20),
(6, 0.00, 0.00), (6, -51.40, 0.00);
теги: FLOAT, SELECT
 


Проблемы и распространенные ошибки » Решение проблем с отсутствием строк, удовлетворяющих условиям поиска
A.5.6 Решение проблем с отсутствием строк, удовлетворяющих условиям поиска

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

Проверьте запрос с помощью EXPLAIN и посмотрите, не присутствуют ли в нем явно неправильные записи (see section 5.2.1 Синтаксис оператора EXPLAIN (получение информации о SELECT)).
теги: SELECT, shell
 


Проблемы и распространенные ошибки » Удаление строк из взаимосвязанных таблиц
A.5.5 Удаление строк из взаимосвязанных таблиц

Поскольку MySQL пока что не поддерживает вложенных запросов, а также (до версии 4.0) использование более одной таблицы в команде DELETE, то для удаления строк из 2 взаимосвязанных таблиц следует использовать следующий подход:

Выполните в главной таблице SELECT строк на основе некоторого условия WHERE.
теги: DELETE, SELECT, WHERE
 


Проблемы и распространенные ошибки » Проблемы с alias
A.5.4 Проблемы с alias

Псевдонимы можно использовать для ссылки на столбец в GROUP BY, ORDER BY или в части HAVING, а также для лучшего именования столбцов:

SELECT SQRT(a*b) as rt FROM table_name GROUP BY rt HAVING rt > 0;
SELECT id,COUNT(*) AS cnt FROM table_name GROUP BY id HAVING cnt > 0;
SELECT id AS "Customer identity" FROM table_name;
теги: SELECT, WHERE
 


Проблемы и распространенные ошибки » Проблемы со значением NULL
A.5.3 Проблемы со значением NULL


Концепция NULL-значения часто вводит в заблуждение новичков в SQL, которые считают, что NULL - то же, что и пустая строка "". Это ошибка! Например, следующие команды совершенно различны:

mysql> INSERT INTO my_table (phone) VALUES (NULL);
mysql> INSERT INTO my_table (phone) VALUES ("");
теги: NULL, INSERT, SELECT
 


Проблемы и распространенные ошибки » Проблемы с использованием столбцов типа DATE
A.5.2 Проблемы с использованием столбцов типа DATE


Значения типа DATE имеют формат YYYY-MM-DD; согласно стандарту ANSI SQL, никакой другой формат не допускается. Пользователь должен применять этот формат в выражениях UPDATE и в определении WHERE операторов SELECT. Например:

mysql> SELECT * FROM tbl_name WHERE date >= '1997-05-05';

Из соображений удобства MySQL автоматически преобразовывает дату в число, если дата используется в числовом контексте (и наоборот). Благодаря своей ``разумности'' MySQL допускает также ``мягкую'' строковую форму при обновлении и в определении WHERE, сравнивающем дату со столбцом типа TIMESTAMP, DATE или DATETIME ("мягкая" форма означает, что для разделения составляющих даты можно использовать любой знак пунктуации; например, 1998-08-15 и 1998#08#15 эквивалентны). MySQL может также преобразовывать в даты строки, не содержащие разделителей (наподобие 19980815), при условии, что представляемая строкой дата не лишена смысла.
теги: SELECT, UPDATE
 


Проблемы и распространенные ошибки » Где MySQL хранит временные файлы
A.4.4 Где MySQL хранит временные файлы
Переменная окружения TMPDIR содержит полное имя каталога, в котором в MySQL хранит временные файлы. Если TMPDIR не установлена, то MySQL использует каталог, заданный в системе по умолчанию (обычно это `/tmp' или `/usr/tmp'). Если файловая система, в которой находится каталог временных файлов, слишком мала, то следует, отредактировав safe_mysqld, присвоить TMPDIR значение, указывающее на каталог в "более просторной" файловой системе! Временный каталог можно также задавать с помощью опции --tmpdir к mysqld.
теги: mysqld, SELECT
 


Расширение MySQL » Написание процедуры
9.3.2 Написание процедуры
На данный момент единственной документацией по этой теме является исходный код.
теги: sql
 


Расширение MySQL » Процедура Analyse
9.3.1 Процедура Analyse
analyse([max elements,[max memory]])

Эта процедура определена в `sql/sql_analyse.cc'. Она исследует результат запроса и возвращает анализ результатов:

max elements (по умолчанию 256) - максимальное число различных значений, которые analyse будет распознавать в столбце. Аргумент используется analyse для проверки того, является ли тип ENUM оптимальным типом столбца.
теги: SELECT, WHERE
 


Расширение MySQL » Расширение тестового пакета MySQL
9.1.2.2 Расширение тестового пакета MySQL
Для создания собственных контрольных тестов можно использовать язык mysqltest. К сожалению, полная документация по языку пока еще не написана, но мы планируем в скором времени это сделать. Можно, однако, обратиться к имеющимся контрольным тестам и использовать их в качестве примера. В качестве отправных точек должны служить следующие моменты:

Тесты должны быть расположены в mysql-test/t/*.test
теги: SELECT, SHOW
 


Интерфейсы для MySQL » Какие результаты можно получить из запроса?
8.4.6.2 Какие результаты можно получить из запроса?
В дополнение к возвращенному запросом результирующему набору данных можно также получить следующую информацию:

Функция mysql_affected_rows() возвращает количество строк, подвергшихся воздействию во время последнего запроса при выполнении INSERT, UPDATE или DELETE. Исключение составляет случай использования команды DELETE без выражения WHERE, когда таблица воссоздается как пустая, а это намного быстрее!
теги: INSERT, UPDATE, DELETE
 


Интерфейсы для MySQL » mysql_use_result()
8.4.3.217 mysql_use_result()

MYSQL_RES *mysql_use_result(MYSQL *mysql)

8.4.3.218 Описание
Функцию mysql_store_result() или mysql_use_result() необходимо вызывать после каждого выполненного запроса, извлекающего данные (SELECT, SHOW, DESCRIBE, EXPLAIN).

Функция mysql_use_result() инициализирует извлечение результирующего набора, но фактически не производит чтение в клиенте подобно тому, как это делает функция mysql_store_result().
теги: NULL, SERVER
 


Страницы: [ 1 ] - 2 - 3 - 4 - 5 - 6 - 7 - 8 - 9

Добавить в закладки:

 


  Категории
Общая информация 73
Установка MySQL 78
Учебное пособие по MySQL 33
Администрирование баз данных 98
Оптимизация в MySQL 41
Справочник по языку MySQL 75
Типы таблиц MySQL 55
Интерфейсы для MySQL 89
Расширение MySQL 18
Проблемы и распространенные ошибки 33
Привнесенные программы 6
Перенос на другие системы 15
 

  Теги
 

  Лучшее на сайте
Сравнение возможностей MySQL и PostgreSQL 442
Адаптивный хешированный индекс 381
Синтаксис оператора EXPLAIN (получение информации о SELECT) 330
Функции даты и времени 320
mysqlimport, импорт данных из текстовых файлов 316
Основные возможности MySQL 313
Запуск MySQL на Windows NT, 2000 или XP 305
Что представляет собой компания MySQL AB? 299
Типы данных DATETIME, DATE и TIMESTAMP 291
Использование символических ссылок для таблиц 260
 

  Друзья сайта
 

  Интересное
 

 
Использование материалов только при активной гиперссылке "http://sql-book.net"
Copyright 2008 http://sql-book.net Серия сайтов: "Стань умным!".