powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Связи с помощью ADO
6 сообщений из 6, страница 1 из 1
Связи с помощью ADO
    #32494025
Dicar
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
У меня есть 4 таблицы в access базе. 3 из них связаны. Мне нужно что бы при запуске программы в 4 таблице создавались связи с двуме из них, и вкл. свойство "Каскадное обновление","Каскадное удаление", а по завершений эти связи удалялись?Как это реализовать.
Пишу я на Delphi.
...
Рейтинг: 0 / 0
Связи с помощью ADO
    #32494067
Фотография Pavel
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Временные таблички в схему включаем?
...
Рейтинг: 0 / 0
Связи с помощью ADO
    #32494273
Dicar
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Да, а связи создаются при открытии программы и удаляются по ее закрытии
...
Рейтинг: 0 / 0
Связи с помощью ADO
    #32494349
Фотография Victosha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
либо смотри в сторону ADOX, либо пользуй ALTER TABLE с предложением CONSTRAINT

CONSTRAINT имя
{PRIMARY KEY (ключевое_1[, ключевое_2 [, ...]]) |
UNIQUE (уникальное_1[, уникальное_2 [, ...]]) |
NOT NULL (непустое_1[, непустое_2 [, ...]]) |
FOREIGN KEY [NO INDEX] (ссылка_1[, ссылка_2 [, ...]]) REFERENCES внешняяТаблица [(внешнееПоле_1 [, внешнееПоле_2 [, ...]])]
[ON UPDATE CASCADE | SET NULL]
[ON DELETE CASCADE | SET NULL]}


а вообще - чудно это...
...
Рейтинг: 0 / 0
Связи с помощью ADO
    #32494569
Dicar
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Прошу прошения за очень тупой вопрос, но я еще только начел изучат БД, а что такое ALTER TABLE и где его взять, да и я поставил ADOX а он платный, может у кого есть нормальная вверсия(в смысле не выкидывает све тупое окно).
...
Рейтинг: 0 / 0
Связи с помощью ADO
    #32494683
Фотография Victosha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ой, расскажите, хде платный ADOX берут - может мне тоже срочно надо платный - а я сидю - не догадываюсь. -)

ALTER TABLE - команда DDL подмножества SQL
Исполняют ее Connection.Execute

про ALTER TABLE - вооБЧе-то неплохо было бы понять, "хто та база", допустим,
mdb. Допустим Jet 4

Тогда
Инструкция ALTER TABLE
Изменяет структуру таблицы, созданной с помощью инструкции CREATE TABLE.


--------------------------------------------------------------------------------

Примечание. Ядро базы данных Microsoft Jet не поддерживает использование инструкции ALTER TABLE и всех инструкций языка определения данных (DDL) с базами данных, несовместимыми со стандартом Microsoft Jet. Применяйте вместо них методы Create объектов доступа к данным (DAO).


--------------------------------------------------------------------------------

Синтаксис
ALTER TABLE таблица {ADD {COLUMN тип поля[(размер)] [NOT NULL] [CONSTRAINT индекс] |
ALTER COLUMN тип поля[(размер)] |
CONSTRAINT составнойИндекс} |
DROP {COLUMN поле I CONSTRAINT имяИндекса} }

Ниже перечислены аргументы инструкции ALTER TABLE:

Элемент Описание
таблица Имя изменяемой таблицы.
поле Имя поля, добавляемого в таблицу или удаляемого из нее. Имя поля, заменяемого в таблице.
тип Тип данных поля.
размер Размер поля в знаках (только для текстовых и двоичных полей).
индекс Индекс для поля. Для получения более подробных сведений о создании индекса смотрите описание предложения CONSTRAINT.
составнойИндекс Описание составного индекса, добавляемого к таблице. Для получения более подробных сведений о создании индекса смотрите описание предложения CONSTRAINT.
имяИндекса Имя составного индекса, который следует удалить.


Дополнительные сведения
С помощью инструкции ALTER TABLE существующую таблицу можно изменить несколькими способами. Например:

Добавить новое поле в таблицу с помощью предложения ADD COLUMN. В этом случае укажите имя поля, его тип и (для текстовых и двоичных полей) необязательный размер. Например, следующая инструкция добавляет в таблицу «Сотрудники» текстовое поле «Примечания» длиной 25 знаков:
ALTER TABLE Сотрудники ADD COLUMN Примечания TEXT(25)


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

Если для поля добавлено ограничение NOT NULL, то при добавлении новых записей это поле должно содержать допустимые данные.

Для изменения типа существующего поля используйте инструкцию ALTER COLUMN. В этом случае укажите имя поля, его тип и (для текстовых и двоичных полей) необязательный размер. Например, следующая инструкция позволяет в таблице «Сотрудники» изменить тип поля «Почтовый индекс» (первоначально определенный как INTEGER), переопределив это поле как текстовое длиной 10 знаков:
ALTER TABLE Сотрудники ALTER COLUMN ПочтовыйИндекс TEXT(10)


Добавить составной индекс с помощью зарезервированных слов ADD CONSTRAINT. Для получения более подробных сведений о составных индексах смотрите описание предложения CONSTRAINT.
Удалить поле с помощью зарезервированных слов DROP COLUMN. В этом случае укажите только имя поля.
Удалить составной индекс с помощью зарезервированных слов DROP CONSTRAINT. В этом случае укажите только имя составного индекса, следующее за зарезервированным словом CONSTRAINT.
--------------------------------------------------------------------------------

Примечания

Нельзя добавить или удалить одновременно несколько полей или индексов.
Инструкцию CREATE INDEX можно использовать для добавления к таблице простого или составного индекса, а инструкции ALTER TABLE и DROP служат для удаления индекса, созданного с помощью инструкций ALTER TABLE или CREATE INDEX.
Допускается использование ограничения NOT NULL для одиночного поля, а также внутри именованного предложения CONSTRAINT, которое применяется к одиночному полю или к именованному предложению CONSTRAINT, предназначенному для создания составного индекса. Однако ограничение NOT NULL можно наложить на поле только один раз. При попытке применить это ограничение несколько раз возникает ошибка выполнения.
...
Рейтинг: 0 / 0
6 сообщений из 6, страница 1 из 1
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Связи с помощью ADO
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]