Клубове Дир.бг
powered by diri.bg
търси в Клубове diri.bg Разширено търсене

Вход
Име
Парола

Клубове
Dir.bg
Взаимопомощ
Горещи теми
Компютри и Интернет
Контакти
Култура и изкуство
Мнения
Наука
Политика, Свят
Спорт
Техника
Градове
Религия и мистика
Фен клубове
Хоби, Развлечения
Общества
Я, архивите са живи
Клубове Дирене Регистрация Кой е тук Въпроси Списък Купувам / Продавам 23:16 20.06.24 
Компютри и Интернет
   >> Бази данни
Всички теми Следваща тема *Кратък преглед

Тема Triggers  
АвторDayDio (Нерегистриран)
Публикувано05.07.05 20:45



В база данни имам 3 таблици с по 1 тригер (всеки, от които генерира уникално число за колоната ID във всяка от таблиците)
Когато въвеждам и трия записи и в 3-те таблици стойността на ID може да съвпадне и тогава ми дава грешка (числото в ID трябва да бъде различно от числата в 3-те таблици)
Какво трябва да направя за да не става така? (използвам Interbase 6.0)



Тема Re: Triggersнови [re: DayDio]  
Автор NDeu (динозавър)
Публикувано05.07.05 21:51



Вероятно, въпреки твоето желание, не генерираш уникален идентификатор, щом може да съвпадне

Компютъра не прави това което искаш, а това което му заповядаш

А какво точно правиш и каква грешка ти дава ... не мога да позная



Тема Re: Triggersнови [re: NDeu]  
АвторDayDio (Нерегистриран)
Публикувано06.07.05 01:04



Дава ми грешка тъй като намира съвпадение на числото 10 (намира 2 стойности 10) - а те са в различни таблици)
т1 т2 т3
ID ID ID
1 6 10
2 7 11
3 8 12
4 9 13
5 10 14

Ще ви бъда благодарен ако ми напишите генератор за уникален индекс
(в Interbase 6.0)



Тема Re: Triggersнови [re: DayDio]  
Автор NDeu (динозавър)
Публикувано06.07.05 16:35



Като гледам колко въпроси си задал в последно време, оставам с впечатлението че си решил, че можеш да се научиш само като питаш по форумите.
Имай предвид, че това е почти невъзможна мисия, ако ти се губят основни елементи. Вземи прочети документацията и публикуваните статии по въпроса и когато нещо остане неясно, тогава можеш да потърсиш помощ с конкретни въпроси. В противен случай, както вече ти бяха казали в една тема, почва да става досадно
Някой беше ти дал линк към


Можеш да си изтеглиш и









Успех и





Тема Re: Triggersнови [re: DayDio]  
Автор Vermax (киликанзер)
Публикувано06.07.05 16:46



Joker:

използвай общ генератор за 3-те таблици. Това ти гарантира уникалност в трите таблици



Тема Re: Triggersнови [re: DayDio]  
Автор NDeu (динозавър)
Публикувано06.07.05 17:00



Правиш ли разлика между тригер и генератор, идентификатор и индекс.
По примера, който си дал не може да се каже каква грешка и къде ти я дава. В такива случаи е добре да даваш извадка на същественото от метаданните. Таблиците, какви индекси имат, какви констрейнти, тригери.

Уникални стойности можеш да генерираш по различни начини. Преди известно време имаше бурна и обемна дискусия по въпроса. Можеш да я потърсиш.
Ето ти един от най-често използваните:
Ако имаш

CREATE TABLE MY_TABLE (

ID INTEGER NOT NULL,
SOMETHING VARCHAR(10)
);
/*********************************************/
/*** Primary Keys ***/
/*********************************************/
ALTER TABLE MY_TABLE ADD CONSTRAINT PK_MY_TABLE PRIMARY KEY (ID);
/********************************************/
/*** Triggers ***/
/********************************************/
SET TERM ^ ;
/***********************************************/
/*** Triggers for tables ***/
/***********************************************/
/* Trigger: MY_TABLE_BI0 */
CREATE TRIGGER MY_TABLE_BI0 FOR MY_TABLE
ACTIVE BEFORE INSERT POSITION 0
AS
begin
if (new.id is null) then new.id=gen_id(g_my_table_id,1);
end
^




Тема Re: Triggersнови [re: DayDio]  
Автор Wolfheart (Day-dreamer)
Публикувано08.07.05 12:52



пробвай 3-те таблици с един генератор




Всички темиСледваща тема*Кратък преглед
Клуб :  


Clubs.dir.bg е форум за дискусии. Dir.bg не носи отговорност за съдържанието и достоверността на публикуваните в дискусиите материали.

Никаква част от съдържанието на тази страница не може да бъде репродуцирана, записвана или предавана под каквато и да е форма или по какъвто и да е повод без писменото съгласие на Dir.bg
За Забележки, коментари и предложения ползвайте формата за Обратна връзка | Мобилна версия | Потребителско споразумение
© 2006-2024 Dir.bg Всички права запазени.