Создание и изменение таблиц или индексов с помощью запроса определения данных

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

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

В этой статье

Обзор

Создание и изменение таблицы

Создание индекса

Создание ограничения или связи

Обзор

В отличие от других запросы Access запрос определения данных не извлечь данные. Вместо этого запроса определения данных использует язык описания данных для создания, изменения или удаления объектов базы данных.

Примечание: Язык описания данных (DDL) входит в состав из язык SQL (Structured Query).

Определение данных запросов может быть очень удобный. Регулярно можно удалить и повторно создать просто запустив некоторые запросы части схему базы данных. Можно использовать запрос определения данных, если вы знакомы с инструкции SQL, и вы планируете удаление и повторное создание отдельных таблиц, ограничений, индексы или связи.

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

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

Ключевые слова DDL

Ключевое слово

Использование

CREATE

Создание указателя или оглавления, который еще не существует.

ALTER

Изменение существующей таблицы или столбца.

DROP

Удаление существующей таблицы, столбца или ограничения.

ADD

Добавление в таблицу столбец или ограничения.

COLUMN

Использование с ALTER, добавить или удалить

CONSTRAINT

Использование с ALTER, добавить или удалить

INDEX

Использование с Создание

TABLE

Использование с ALTER, создание, или удалить

К началу страницы

Создание и изменение таблицы

Чтобы создать таблицу, используйте команду CREATE TABLE. Команда CREATE TABLE имеет следующий синтаксис:

CREATE TABLE table_name 
(field1 type [(size)] [NOT NULL] [index1]
[, field2 type [(size)] [NOT NULL] [index2]
[, ...][, CONSTRAINT constraint1 [, ...]])

Только необходимые элементы команды CREATE TABLE являются команды CREATE TABLE сам и имя таблицы, но обычно требуется определить некоторые поля или другими аспектами таблицы. Рассмотрим простой пример.

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

Примечание: Во-первых, может потребоваться включить содержимое базы данных, в противном случае запрос определения данных для запуска:

  • Нажмите на панели сообщений кнопку Включить содержимое.

Создание таблицы

  1. На вкладке Создание в группе макрос и код нажмите кнопку Конструктор запросов.

  2. Закройте диалоговое окно Добавление таблицы.

  3. На вкладке " Конструктор " в группе Тип запроса нажмите кнопку Определение данных.

    Скрытые бланке и отображается вкладка объекта SQL представления.

  4. Введите следующую инструкцию SQL:

    Создание таблицы автомобилей (имя TEXT(30), год TEXT(4), валюты цена)

  5. На вкладке Конструктор в группе Результаты нажмите кнопку Выполнить.

Изменение таблицы

Чтобы изменить таблицу, используйте команду ALTER TABLE. Чтобы добавить, изменить или удалить столбцы (Удалить) или ограничения можно использовать команды ALTER TABLE. Команда ALTER TABLE имеет следующий синтаксис:

ALTER TABLE table_name predicate

где предикат может быть любой из следующих действий:

ADD COLUMN field type[(size)] [NOT NULL] [CONSTRAINT constraint]

ADD CONSTRAINT multifield_constraint

ALTER COLUMN field type[(size)]

DROP COLUMN field

DROP CONSTRAINT constraint

Предположим, что вы хотите добавить 10-разрядное текстовое поле для хранения сведений о состоянии каждый автомобиль. Можно сделать следующее:

  1. На вкладке Создание в группе макрос и код нажмите кнопку Конструктор запросов.

  2. Закройте диалоговое окно Добавление таблицы.

  3. На вкладке " Конструктор " в группе Тип запроса нажмите кнопку Определение данных.

    Скрытые бланке и отображается вкладка объекта SQL представления.

  4. Введите следующую инструкцию SQL:

    Инструкции ALTER таблицы автомобилей добавить столбец условие TEXT(10)

  5. На вкладке Конструктор в группе Результаты нажмите кнопку Выполнить.

К началу страницы

Создание индекса

Чтобы создать индекс в существующую таблицу, используйте команду CREATE INDEX. Команда CREATE INDEX имеет следующий синтаксис:

CREATE [UNIQUE] INDEX index_name
ON table (field1 [DESC][, field2 [DESC], ...])
[WITH {PRIMARY | DISALLOW NULL | IGNORE NULL}]

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

  • Причины аргумент DESC индекс будет создан в порядке убывания, которая может быть полезно, если вы часто выполнение запросов, найдите максимальных значений для поля "индексировано" или, сортировка индексированные поля в порядке убывания. По умолчанию создается индекс по возрастанию.

  • Аргумент с ОСНОВНОЙ устанавливает индексированное поле или поля в качестве первичный ключ таблицы.

  • Аргумент с запретить NULL вызывает индекс, что требуется ввести значение для поля "индексировано" — то есть, не разрешены нулевые значения.

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

  1. На вкладке Создание в группе макрос и код нажмите кнопку Конструктор запросов.

  2. Закройте диалоговое окно Добавление таблицы.

  3. На вкладке " Конструктор " в группе Тип запроса нажмите кнопку Определение данных.

    Скрытые бланке и отображается вкладка объекта SQL представления.

  4. Введите следующую инструкцию SQL:

    Создание ИНДЕКСА д YearIndex автомобилей (год)

  5. На вкладке Конструктор в группе Результаты нажмите кнопку Выполнить.

К началу страницы

Создание ограничения или связи

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

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

Чтобы создать ограничение, используйте предложение CONSTRAINT в команде CREATE TABLE или ALTER TABLE. Существует два типа предложения CONSTRAINT: один для создания ограничения на одно поле, а другой — для создания ограничения по нескольким полям.

Ограничения для одного поля

Предложение CONSTRAINT одного поля немедленно включает определение поля он ограничивает и имеет следующий синтаксис:

CONSTRAINT constraint_name {PRIMARY KEY | UNIQUE | NOT NULL |
REFERENCES foreign_table [(foreign_field)]
[ON UPDATE {CASCADE | SET NULL}]
[ON DELETE {CASCADE | SET NULL}]}

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

  1. На вкладке Создание в группе макрос и код нажмите кнопку Конструктор запросов.

  2. Закройте диалоговое окно Добавление таблицы.

  3. На вкладке " Конструктор " в группе Тип запроса нажмите кнопку Определение данных.

    Скрытые бланке и отображается вкладка объекта SQL представления.

  4. Введите следующую инструкцию SQL:

    Инструкции ALTER таблицы автомобилей ALTER СТОЛБЦА условие текст ограничение ConditionRequired NOT NULL

  5. На вкладке Конструктор в группе Результаты нажмите кнопку Выполнить.

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

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

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

  1. На вкладке Создание в группе макрос и код нажмите кнопку Конструктор запросов.

  2. Закройте диалоговое окно Добавление таблицы.

  3. На вкладке " Конструктор " в группе Тип запроса нажмите кнопку Определение данных.

    Скрытые бланке и отображается вкладка объекта SQL представления.

  4. Введите следующую инструкцию SQL:

    Создание таблицы CarCondition (условие TEXT(10))

  5. На вкладке Конструктор в группе Результаты нажмите кнопку Выполнить.

  6. Создание первичного ключа в таблице с помощью инструкции ALTER TABLE:

    Инструкции ALTER CarCondition ALTER СТОЛБЦА условие текст ограничение CarConditionPK ПЕРВИЧНОГО ключа таблицы

  7. Чтобы вставить значения из поля условия в таблице автомобилей в новую таблицу CarCondition, введите следующие SQL на вкладку Вид объекта SQL:

    INSERT INTO SELECT ключевое слово DISTINCT CarCondition условие из автомобилей;

    Примечание: Инструкцию SQL в этом шаге является запрос на добавление. В отличие от управляющий запрос запрос на добавление заканчивается точкой с запятой.

  8. На вкладке Конструктор в группе Результаты нажмите кнопку Выполнить.

Создание связи с помощью ограничения

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

  1. На вкладке Создание в группе макрос и код нажмите кнопку Конструктор запросов.

  2. Закройте диалоговое окно Добавление таблицы.

  3. На вкладке " Конструктор " в группе Тип запроса нажмите кнопку Определение данных.

    Скрытые бланке и отображается вкладка объекта SQL представления.

  4. Введите следующую инструкцию SQL:

    Инструкции ALTER таблицы автомобилей ALTER СТОЛБЦА условие текст ограничение FKeyCondition ссылки CarCondition (состояние)

  5. На вкладке Конструктор в группе Результаты нажмите кнопку Выполнить.

Составные ограничения

Предложение CONSTRAINT нескольких полей можно использовать только из-за пределов предложение определение поля и имеет следующий синтаксис:

CONSTRAINT constraint_name 
{PRIMARY KEY (pk_field1[, pk_field2[, ...]]) |
UNIQUE (unique1[, unique2[, ...]]) |
NOT NULL (notnull1[, notnull2[, ...]]) |
FOREIGN KEY [NO INDEX] (ref_field1[, ref_field2[, ...]])
REFERENCES foreign_table
[(fk_field1[, fk_field2[, ...]])] |
[ON UPDATE {CASCADE | SET NULL}]
[ON DELETE {CASCADE | SET NULL}]}

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

  1. На вкладке Создание в группе макрос и код нажмите кнопку Конструктор запросов.

  2. Закройте диалоговое окно Добавление таблицы.

  3. На вкладке " Конструктор " в группе Тип запроса нажмите кнопку Определение данных.

    Скрытые бланке и отображается вкладка объекта SQL представления.

  4. Введите следующую инструкцию SQL:

    ИЗМЕНИТЬ ТАБЛИЦУ автомобилей добавить ограничение NoDupes УНИКАЛЬНЫХ (название, год, условия, цена)

  5. На вкладке Конструктор в группе Результаты нажмите кнопку Выполнить.

К началу страницы

Совершенствование навыков работы с Office
Перейти к обучению
Первоочередный доступ к новым возможностям
Присоединиться к программе предварительной оценки Office

Были ли сведения полезными?

Спасибо за ваш отзыв!

Благодарим за отзыв! Возможно, будет полезно связать вас с одним из наших специалистов службы поддержки Office.

×