2016-04-14 4 views
0

При попытке создать таблицу с помощью команды:Тип данных PostgreSQL ROW?

CREATE TABLE Client(ncli char(10) not null primary key, 
        nom char(32) not null, 
        adress row(rue char(30), 
        localite char(60)), 
        cat char(2)); 

Я получаю сообщение об ошибке сказав:

ERROR: syntax error at or near "row"

Почему я получаю сообщение об ошибке, и как я могу избежать этого?

+2

Мне не известно об этом синтаксисе в Postgres. Вероятно, вы должны просто создать отдельную таблицу 'adresses'. –

+0

Где в [документации инструкции create table] (http://www.postgresql.org/docs/current/static/sql-createtable.html) вы нашли этот синтаксис? –

ответ

0

Вы можете использовать строку при вставке несколько значений, но я думаю, что когда вы создаете таблицу, необходимо создать новый тип:

CREATE TYPE myAdress AS (
     rue char(30), 
     localite char(60) 
    ); 

Затем использовать его для создания таблицы:

CREATE TABLE Client(ncli char(10) not null primary key, 
        nom char(32) not null, 
        adress myAdress, 
        cat char(2)); 

Вот документ, если вы хотите узнать больше: http://www.postgresql.org/docs/9.3/static/rowtypes.html

+0

Спасибо, я попробую. – SenDjasni

Смежные вопросы