[postgresql] triger lub coś innego ....
jarek - 13-01-2007 00:01
[postgresql] triger lub coś innego ....
Witam, Mam tabele : Wyniki idwyniki serial nazwa varchar(255) par1 BOOLEAN DEFAULT false NOT NULL par2 BOOLEAN DEFAULT false NOT NULL
Chcialbym zrobić do tej tabeli insert-a INSERT INTO wyniki (nazwa) VALUES ('to jest tekst zawierajacy (par2) i (par1)');
i podczas dodawania rekordu zastapic wyrazenia regularne (par1),(par2) na 1,2 oraz jesli w wyrazeniu byl (par1) ustawic par1 na True.
Czy ktoś może podsunac pomysł lub jakis przykład jak to zrobić ??
Pozdrawiam jarek
-- Wysłano z serwisu OnetNiusy: http://niusy.onet.pl
=?ISO-8859-2?Q?Pawe=B3_Matejski?= - 13-01-2007 00:01
jarek wrote: > Witam, > Mam tabele : > Wyniki > idwyniki serial > nazwa varchar(255) > par1 BOOLEAN DEFAULT false NOT NULL > par2 BOOLEAN DEFAULT false NOT NULL > > Chcialbym zrobić do tej tabeli insert-a > INSERT INTO wyniki (nazwa) VALUES ('to jest tekst zawierajacy (par2) i (par1)'); > > i podczas dodawania rekordu zastapic wyrazenia regularne (par1),(par2) na 1,2 > oraz jesli w wyrazeniu byl (par1) ustawic par1 na True. > > Czy ktoś może podsunac pomysł lub jakis przykład jak to zrobić ??
Funkcje dodającą rekord napisz. Najlepiej się do tego będzie nadawała.
-- P.M.
Herakles - 13-01-2007 00:01
Paweł Matejski wrote:
> jarek wrote: >> Witam, >> Mam tabele : >> Wyniki >> idwyniki serial >> nazwa varchar(255) >> par1 BOOLEAN DEFAULT false NOT NULL >> par2 BOOLEAN DEFAULT false NOT NULL >> >> Chcialbym zrobić do tej tabeli insert-a >> INSERT INTO wyniki (nazwa) VALUES ('to jest tekst zawierajacy (par2) i >> (par1)'); >> >> i podczas dodawania rekordu zastapic wyrazenia regularne (par1),(par2) na >> 1,2 oraz jesli w wyrazeniu byl (par1) ustawic par1 na True. >> >> Czy ktoś może podsunac pomysł lub jakis przykład jak to zrobić ?? Triger after i masz OLD czyli twój tekst sprawdzasz co w nim jest i updateujesz świerzo dodany rekord.
> > Funkcje dodającą rekord napisz. Najlepiej się do tego będzie nadawała. >
Nie do końca, bardzo wygodnie się działa na takich otrigerowanych tabelkach, radośnie sobie w aplikacji robisz proste inserty czy updatey, które robią bardziej skąplikowane operacje na bazie, które dużo łatwiej jest zakodować np w plpgsql.
Herakles - 13-01-2007 00:01
Herakles wrote:
> Paweł Matejski wrote: > >> jarek wrote: >>> Witam, >>> Mam tabele : >>> Wyniki >>> idwyniki serial >>> nazwa varchar(255) >>> par1 BOOLEAN DEFAULT false NOT NULL >>> par2 BOOLEAN DEFAULT false NOT NULL >>> >>> Chcialbym zrobić do tej tabeli insert-a >>> INSERT INTO wyniki (nazwa) VALUES ('to jest tekst zawierajacy (par2) i >>> (par1)'); >>> >>> i podczas dodawania rekordu zastapic wyrazenia regularne (par1),(par2) >>> na 1,2 oraz jesli w wyrazeniu byl (par1) ustawic par1 na True. >>> >>> Czy ktoś może podsunac pomysł lub jakis przykład jak to zrobić ?? > Triger after i masz OLD czyli twój tekst sprawdzasz co w nim jest i > updateujesz świerzo dodany rekord. sory NEW > >> >> Funkcje dodającą rekord napisz. Najlepiej się do tego będzie nadawała. >> > > Nie do końca, bardzo wygodnie się działa na takich otrigerowanych > tabelkach, radośnie sobie w aplikacji robisz proste inserty czy updatey, > które robią bardziej skąplikowane operacje na bazie, które dużo łatwiej > jest zakodować np w plpgsql.
jarek - 13-01-2007 00:01
> Herakles wrote: > > > Paweł Matejski wrote: > > > >> jarek wrote: > >>> Witam, > >>> Mam tabele : > >>> Wyniki > >>> idwyniki serial > >>> nazwa varchar(255) > >>> par1 BOOLEAN DEFAULT false NOT NULL > >>> par2 BOOLEAN DEFAULT false NOT NULL > >>> > >>> Chcialbym zrobić do tej tabeli insert-a > >>> INSERT INTO wyniki (nazwa) VALUES ('to jest tekst zawierajacy (par2) i > >>> (par1)'); > >>> > >>> i podczas dodawania rekordu zastapic wyrazenia regularne (par1),(par2) > >>> na 1,2 oraz jesli w wyrazeniu byl (par1) ustawic par1 na True. > >>> > >>> Czy ktoś może podsunac pomysł lub jakis przykład jak to zrobić ?? > > Triger after i masz OLD czyli twój tekst sprawdzasz co w nim jest i > > updateujesz świerzo dodany rekord. > sory NEW > > > >> > >> Funkcje dodającą rekord napisz. Najlepiej się do tego będzie nadawała. > >> > > > > Nie do końca, bardzo wygodnie się działa na takich otrigerowanych > > tabelkach, radośnie sobie w aplikacji robisz proste inserty czy updatey, > > które robią bardziej skąplikowane operacje na bazie, które dużo łatwiej > > jest zakodować np w plpgsql. > A w jaki sposob mam przeszukac NEW.nazwa czy zawiera (par1) (par2) ?? Czy zmiane (par1) (par2) w NEW.nazwa mam zrobic na zasadzie replace(replace(NEW.nazwa,'(par1)','1'),'(par1)',' 2') Czy można zrobić to bardziej elegancko ??
-- Wysłano z serwisu OnetNiusy: http://niusy.onet.pl
Herakles - 13-01-2007 00:14
jarek wrote:
>> Herakles wrote: >> >> > Paweł Matejski wrote: >> > >> >> jarek wrote: >> >>> Witam, >> >>> Mam tabele : >> >>> Wyniki >> >>> idwyniki serial >> >>> nazwa varchar(255) >> >>> par1 BOOLEAN DEFAULT false NOT NULL >> >>> par2 BOOLEAN DEFAULT false NOT NULL >> >>> >> >>> Chcialbym zrobić do tej tabeli insert-a >> >>> INSERT INTO wyniki (nazwa) VALUES ('to jest tekst zawierajacy (par2) >> >>> i (par1)'); >> >>> >> >>> i podczas dodawania rekordu zastapic wyrazenia regularne >> >>> (par1),(par2) na 1,2 oraz jesli w wyrazeniu byl (par1) ustawic par1 >> >>> na True. >> >>> >> >>> Czy ktoś może podsunac pomysł lub jakis przykład jak to zrobić ?? >> > Triger after i masz OLD czyli twój tekst sprawdzasz co w nim jest i >> > updateujesz świerzo dodany rekord. >> sory NEW >> > >> >> >> >> Funkcje dodającą rekord napisz. Najlepiej się do tego będzie nadawała. >> >> >> > >> > Nie do końca, bardzo wygodnie się działa na takich otrigerowanych >> > tabelkach, radośnie sobie w aplikacji robisz proste inserty czy >> > updatey, które robią bardziej skąplikowane operacje na bazie, które >> > dużo łatwiej jest zakodować np w plpgsql. >> > A w jaki sposob mam przeszukac NEW.nazwa czy zawiera (par1) (par2) ?? > Czy zmiane (par1) (par2) w NEW.nazwa mam zrobic na zasadzie > replace(replace(NEW.nazwa,'(par1)','1'),'(par1)',' 2') > Czy można zrobić to bardziej elegancko ?? > > masz jeszcze wyrażenia regularne.
zanotowane.pldoc.pisz.plpdf.pisz.pleffulla.pev.pl
|
[PostgreSQL] - jak =?ISO-8859-2?Q?zabezpieczy=E6_interesy_tw?==?ISO-8859-2?Q?=F3rcy_systemu_=3F=3F=3F?=
postgresql - int/int
postgresql Select count(*) czy raczej Select count(ID)
[PostgreSQL] jak =?ISO-8859-2?Q?pobra=E6_warto=B6=E6_zwracan?==?ISO-8859-2?Q?=B1_przez_funkcj=EA=3F?=
[postgresql] INSERT OR UPDATE - jak =?ISO-8859-2?Q?b=EAdzie_na?==?ISO-8859-2?Q?jlepiej=3F?=
[postgresql] kilka =?ISO-8859-2?Q?rekord=F3w_subquery_jako_?==?ISO-8859-2?Q?string?=
[PostgreSQL] Jak =?ISO-8859-2?Q?po=B3=B1czy=E6_funkcje_z_w?==?ISO-8859-2?Q?idokiem?=
Postgres - replikcja master-master
Dopasowanie do "najlepszego" dopasowania :) [ PostgreSQL]
Problemy z =?ISO-8859-2?Q?instalacj=B1_PostgreSQL_na_syste?==?ISO-8859-2?Q?mach_Windows?=
zanotowane.pldoc.pisz.plpdf.pisz.plnawschodzie.xlx.pl
Cytat
Decede mihi sole - nie zasłaniaj mi słonca. Gdy kogoś kochasz, jesteś jak stworzyciel świata - na cokolwiek spojrzysz, nabiera to kształtu, wypełnia się barwą, światłem. Powietrze przytula się do ciebie, choćby był mróz, a ty masz w sobie tyle radości, że musisz ją rozdawać wokoło, bo się w tobie nie mieści Hoc fac - tak czyń. A tergo - od tyłu; z tyłu. I czarne włosy posiwieją. Safona |
|