Unable to create an array of a domain
От | Mark Gibson |
---|---|
Тема | Unable to create an array of a domain |
Дата | |
Msg-id | 4084FBF9.5020807@cromwell.co.uk обсуждение исходный текст |
Ответы |
Re: Unable to create an array of a domain
|
Список | pgsql-hackers |
Hi, I've recently been trying to make use of domains but have encountered some violations of the rule of least surprise. (PostgreSQL 7.4.2) I couldn't create an array of a domain, eg: CREATE DOMAIN mydomain AS integer; CREATE TABLE mytable ( stuff mydomain[] ); results in: ERROR: type "mydomain[]" does not exist I noticed that the type '_mydomain' doesn't exist in pg_type, so I tried: CREATE DOMAIN _mydomain AS mydomain[]; ERROR: type "mydomain[]" does not exist (hmmm, chicken/egg), so let's try: CREATE DOMAIN _mydomain AS integer[]; This worked, and now the create table statement above also works, and I can insert into the table using the array input syntax too. I have a few concerns though: Is there any reason why a domain cannot use another domain as it's base type? eg: CREATE DOMAIN anotherdomain AS mydomain; ERROR: "mydomain" is not a valid base type for a domain And why isn't an array type created for a domain? (Is there a way to create an array for a domain without resorting to an array of the domain's base type?) Cheers -- Mark Gibson <gibsonm |AT| cromwell |DOT| co |DOT| uk> Web Developer & Database Admin Cromwell Tools Ltd. Leicester, England.
В списке pgsql-hackers по дате отправления: