"Divne" funkce v PgSQL

Karel Zak zakkr na zf.jcu.cz
Čtvrtek Září 21 13:16:14 CEST 2000


On Thu, 21 Sep 2000, "Zíka Aleš, Ing." wrote:

> 	Zdravim,
> 
> 	mel bych takovy zvidavy dotaz, nejspis na Karla Zaka. Jak jsou v Pg
> SQL implementovany funkce s takovou "divnou syntaxi" argumentu, a muzu si
> dalsi takove udelat i ja uzivatelsky? "Divnou syntaxi" myslim CAST(promenna
> AS typ), SUBSTRING(char FROM pozice FOR delka) a podobne, tedy kdy jsou
> argumenty oddeleny misto carkami nejakymi klicovymi slovy.
> 	Napada me jedine neco jako #define v Cecku, kdy napr. AS se proste
> nejakym preprocesorem v parseru prevede na carku, ale to muze byt blbost.

 Ano, to je udelano a urovni parseru (via flex+bison):

	CAST '(' a_expr AS Typename ')' 

	SUBSTRING '(' substr_list ')'

 nejedna se tedy z pohledu PG o funkce ale o soucast syntaxe (zrovna v
tomto pripade dle SQL92).

 => takovou funkci bez zasahu do zdrojaku neudelate :-)

 jinak: src/backend/parser/gram.y

					Karel



Další informace o konferenci Test