Студопедия
Случайная страница | ТОМ-1 | ТОМ-2 | ТОМ-3
АрхитектураБиологияГеографияДругоеИностранные языки
ИнформатикаИсторияКультураЛитератураМатематика
МедицинаМеханикаОбразованиеОхрана трудаПедагогика
ПолитикаПравоПрограммированиеПсихологияРелигия
СоциологияСпортСтроительствоФизикаФилософия
ФинансыХимияЭкологияЭкономикаЭлектроника

Формирование числовых ключей

Инструмент командной строки mysql | О пропущенном блоке from | Символьные данные | Наборы символов | Текстовые данные | Числовые данные | Временные данные | Создание таблиц | Шаг 2: уточнение | Шаг 3: построение SQL_выражений управления схемой данных |


Читайте также:
  1. II. ТЕМПЕРАМЕНТ И ХАРАКТЕР. ФОРМИРОВАНИЕ ХАРАКТЕРА.
  2. Quot;Формирование Образа будущей России» - наша актуальная задача.
  3. VII. Информирование об итогах конкурса и порядок награждения
  4. VIII. Формирование и предоставление отчетности о деятельности ЦОИ
  5. А . Подбор экспертов и формирование экспертных групп.
  6. А. Формирование партий, членство в партии и выход из партии
  7. Адвокатское сообщество и формирование его органов и их компетенция

 

Прежде чем заполнить таблицу person данными, полезно обсудить про_ цесс формирования значений числовых первичных ключей. Кроме выбора числа «от фонаря» есть два варианта:

 

• Найти в таблице самое большое на данный момент значение пер_ вичного ключа и прибавить 1.

• Позволить серверу БД предоставить значение.

 

Хотя первый вариант и кажется допустимым, он становится проблема_ тичным в многопользовательской среде, поскольку два пользователя могут одновременно работать с таблицей и сгенерировать одно и то же значение первичного ключа. Напротив, все серверы БД, присутствую_ щие сегодня на рынке, обеспечивают более надежный, более устойчи_


 

Заполнение и изменение таблиц  
   

 

вый к ошибкам метод формирования числовых ключей. Иногда, напри_ мер в Oracle Database, используется отдельный объект схемы (называе_ мый последовательностью (sequence)). Однако в случае с MySQL надо просто включить для столбца первичного ключа свойство auto_incre_ ment (автоприращение). Обычно это делается при создании таблицы, номы занимаемся этим сейчас, чтобы изучить еще одно SQL_выражение управления схемой, которое меняет описание существующей таблицы:

 

ALTER TABLE person MODIFY person_id SMALLINT UNSIGNED AUTO_INCREMENT;

 

Это выражение, по существу, переопределяет столбец person_id табли_ цы person. Теперь команда describe для этой таблицы отобразит атри_ бут автоприращения в столбце Extra для person_id:

 

mysql> DESC person;

 

+____________+______________________+______+_____+_________+________________+ | Field | Type | Null | Key | Default | Extra | +____________+______________________+______+_____+_________+________________+

 

| person_id | smallint(5) unsigned | | PRI | NULL | auto_increment |
|. | | | | | |
|. | | | | | |
|. | | | | | |

 

При вводе данных в таблицу person просто задайте значение null для столбца person_id, и MySQL заполнит столбец следующим доступным числом (для столбцов с автоприращением MySQL по умолчанию начи_ нает отсчет с 1).

 


Дата добавления: 2015-08-17; просмотров: 52 | Нарушение авторских прав


<== предыдущая страница | следующая страница ==>
Что такое Null?| Выражение insert

mybiblioteka.su - 2015-2024 год. (0.005 сек.)