Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Не получается создать свой тип данных / 9 сообщений из 9, страница 1 из 1
23.04.2006, 18:46
    #33685002
RedDevil
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не получается создать свой тип данных
Всем привет.

Читаю книгу К.Дж.Дейта - "Введение в базы данных". В главе 5 написано что в языке SQL есть типы DISTINCT и структурированные типы. Чтобы создать первый из них нужно выполнить следующий запрос:

CREATE TYPE WEIGHT AS DECIMAL(5,1) FINAL;

Как Вы уже наверное догадались, всё заканчивается неудачно, вот что мне говорит PostgreSQL:

d_work=> CREATE TYPE WEIGHT AS DECIMAL(5,1) FINAL;
ERROR: syntax error at or near "DECIMAL" at character 23
СТРОКА 1: CREATE TYPE WEIGHT AS DECIMAL(5,1) FINAL;

Для структурированных типов ситуация схожая:

d_work=> CREATE TYPE POINT AS (X FLOAT, Y FLOAT) NOT FINAL;
ERROR: syntax error at or near "NOT" at character 41
СТРОКА 1: CREATE TYPE POINT AS (X FLOAT, Y FLOAT) NOT FINAL;

Может что прояснит ситуацию ?

Спасибо

PS: Во всех этих манипуляциях принимал участие PostgreSQL-8.1.3
...
Рейтинг: 0 / 0
23.04.2006, 18:59
    #33685011
Алексей Ключников
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не получается создать свой тип данных
Про создание типов надо читать вот здесь
http://www.postgresql.org/docs/8.1/interactive/sql-createtype.html
Это оффициальная документация, с примерами и кометариями.

что имел в виду К.Дж.Дейт, это вопрос.
SQL это стандарт, которому создалели баз стараются держаться в той или иной степени.
...
Рейтинг: 0 / 0
23.04.2006, 19:11
    #33685017
Алексей Ключников
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не получается создать свой тип данных
B еще.
Мое IMHO не стоит сождавать типа которые являются обрезками от типав int или float.
Эти типа поддерживаются на уровне железа. экономию места и быстродействия можно легко протестировать (я не тестировал) но помоему экономии нет.
Завтра протестирую, для уверенности :)
...
Рейтинг: 0 / 0
23.04.2006, 19:12
    #33685018
Алексей Ключников
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не получается создать свой тип данных
Извиняюсь за опечатки.
...
Рейтинг: 0 / 0
23.04.2006, 20:32
    #33685040
RedDevil
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не получается создать свой тип данных
Встречный вопрос, скачал себе postgresql-8.1-A4.pdf. Насколько точно там секция про SQL соответствует стандарту ? Имею ввиду если я до этого ничего не знал про SQL есть ли смысл использовать как учебник по SQL или при переходе к другой СУБД мне придётся многому "переучиваться" ?

Спасибо.
...
Рейтинг: 0 / 0
24.04.2006, 10:08
    #33685414
Shweik
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не получается создать свой тип данных
Думаю если вдумчиво выкурить эту доку переучиваться не придется - придется ДоУчивать различия - они всегда есть, примерно как между русским и украинским языками ;)
любой sql-диалект будет тебе более чем на половину ясен и так.
На самом деле IMHO не существует реально использующихся в производстве
серверов строго соответствующих SQL 92/95 ( поправьте если неправ) Везде обязательно есть ++ и обязательно же найдуться TODO. В доке Постгреса в завершении
описания _каждой_ из sql commands есть раздел
Код: plaintext
1.
2.
3.
Compatibility

This CREATE TYPE command is a PostgreSQL extension. There is a CREATE TYPE statement in the SQL standard that is rather different in detail. 
RTFM!!! ;-)
...
Рейтинг: 0 / 0
24.04.2006, 10:11
    #33685422
Funny_Falcon
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не получается создать свой тип данных
Многому/немногому. Абсолютно совместимых СУБД не бывает. Не парься, учи Oracle :-) или SQL Server.
Я Oracle не знаю (к сожалению может быть), а постгрес уважаю (почти люблю).
...
Рейтинг: 0 / 0
24.04.2006, 23:31
    #33687374
RedDevil
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не получается создать свой тип данных
Funny_FalconМногому/немногому. Абсолютно совместимых СУБД не бывает. Не парься, учи Oracle :-) или SQL Server.
Я Oracle не знаю (к сожалению может быть), а постгрес уважаю (почти люблю).

На Oracle у меня нет денег, а на обрезки которые они раздают на халяву даже и заморачиваться не охота. Про SQL Server не хочется и говорить...
...
Рейтинг: 0 / 0
25.04.2006, 11:15
    #33688092
Funny_Falcon
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Не получается создать свой тип данных
Поясни про обрезки. Что именно они обрезали в Express, что тебе необходимо и что ты нашел в PostgreSQL? ^-)

Ладно, это все отступления от темы. А вообще полезно не только крутые и авторитетные книжки типа Дейта читать (к сожалению не читал; пока не мешает, но все равно сожалею), но и документацию.
...
Рейтинг: 0 / 0
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Не получается создать свой тип данных / 9 сообщений из 9, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]