Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2017.01.15;
Скачать: [xml.tar.bz2];

Вниз

Связь полей таблиц SQLite   Найти похожие ветки 

 
AndrewAndrey ©   (2015-02-18 22:43) [0]

Вопрос до неприличия простой, но никак не соображу как настроить связи полей например в SQLiteManager:
CREATE TABLE pers (id integer NOT NULL PRIMARY KEY AUTOINCREMENT UNIQUE,name text NOT NULL DEFAULT Andrew,prof_id integer)
и
CREATE TABLE prof (id integer NOT NULL PRIMARY KEY UNIQUE,prof text NOT NULL)
первая таблица своим полем prof_id должна быть связана с полем id в таблице prof.
Лыжи не едут - как это делается - подскажите).


 
кгшзх ©   (2015-02-18 23:54) [1]

create осилил?

теперь кури alter и add constraint


 
sniknik ©   (2015-02-19 07:55) [2]

твой "хелп" конечно может быть несколько иным... но раз у тебя его нету ;( -

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

CREATE TABLE Клиенты (ИндексКлиента INTEGER PRIMARY KEY, CLstNm NCHAR VARYING (50))

Рассмотрим следующее определение таблицы «Заказы», в котором задано отношение для внешнего ключа, адресующее ключ в таблице «Клиенты»:

CREATE TABLE Заказы (КодЗаказа INTEGER PRIMARY KEY, ИндексКлиента INTEGER, ПримечанияЗаказа NCHAR VARYING (255), CONSTRAINT ВнКлЗаказыИндексКлиента FOREIGN KEY (ИндексКлиента) REFERENCES Клиенты ON UPDATE CASCADE ON DELETE CASCADE

Оба предложения ON UPDATE CASCADE и ON DELETE CASCADE определены для внешнего ключа. Предложение ON UPDATE CASCADE означает, что в случае обновления кода клиента (ИндексКлиента) в таблице «Клиенты», в таблице «Заказы» будет произведено соответствующее каскадное обновление. Каждый заказ, содержащий соответствующее значение кода клиента, будет автоматически обновлен с использованием нового значения этого кода. Предложение ON DELETE CASCADE означает, что в случае удаления клиента из таблицы «Клиенты», все строки таблицы «Заказы», содержащие код данного клиента, также будут удалены.


 
AndrewAndrey ©   (2015-02-19 09:32) [3]

Спасибо за широкий ответ)) , но через Constraint связи уже делал, я имел ввиду не код, а визуальный конструктор.
Наподобие графических схем в MS Access.


 
Inovet ©   (2015-02-19 10:18) [4]

> [3] AndrewAndrey ©   (19.02.15 09:32)
> не код, а визуальный конструктор

Это сильно помогает? Можно на бумажке нарисовать.


 
AndrewAndrey ©   (2015-02-19 10:34) [5]

По большому счету разницы никакой - просто задался вопросом - есть в программе эта функция или нет. Если нет, просто буду знать, что только кодом настраивается связь.


 
Kilkennycat ©   (2015-02-19 19:25) [6]


> визуальный конструктор

https://code.google.com/p/sqlite-manager/wiki/ForeignKeys



Страницы: 1 вся ветка

Форум: "Начинающим";
Текущий архив: 2017.01.15;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.061 c
2-1421233871
aka
2015-01-14 14:11
2017.01.15
самый быстрый вывод текста


15-1449526144
Kerk
2015-12-08 01:09
2017.01.15
Презентация Delphi в Питере


1-1343890489
rioko
2012-08-02 10:54
2017.01.15
Stream.Seek Stream.Position возвращает ноль.


8-1239693170
Miklek
2009-04-14 11:12
2017.01.15
Можно ли считывать часть большого BMP файла не считывая весь?


15-1451394616
Kerk
2015-12-29 16:10
2017.01.15
Сувениры





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский