На главную Наши проекты:
Журнал   ·   Discuz!ML   ·   Wiki   ·   DRKB   ·   Помощь проекту
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
! информация о разделе
user posted imageДанный раздел предназначается исключительно для обсуждения вопросов использования языка запросов SQL. Обсуждение общих вопросов, связанных с тематикой баз данных - обсуждаем в разделе "Базы данных: общие вопросы". Убедительная просьба - соблюдать "Правила форума" и не пренебрегать "Правильным оформлением своих тем". Прежде, чем создавать тему, имеет смысл заглянуть в раздел "Базы данных: FAQ", возможно там уже есть ответ.

Модераторы: Akina
Страницы: (2) [1] 2  все  ( Перейти к последнему сообщению )  
> Проблема при создании таблиц
    сейчас решил протестировать контроллер баз данных и переключиться на постгрес. Создал базу, но при создании таблиц из под стандартного функционала phpPgAdmin вылезает ошибка:

    Цитата
    ERROR: syntax error at or near "("
    LINE 1: ...TE TABLE "xgb_chidoridev"."cd_pages" ("id" integer(10), "nam...

    В операторе:
    ExpandedWrap disabled
      CREATE TABLE "xgb_chidoridev"."cd_pages" ("id" integer(10), "name" character varying(255), "title" character varying(255), "rights" integer(2), "priority" integer(1), "uopen" text, "uclose" text, "updatetime" integer(20), "createtime" integer(20), "theme" character varying(255), PRIMARY KEY ("id")) WITHOUT OIDS


    После прочтения мануала по постгрес, решил сделать так же как впримере - указывать таблицы и поля без кавычек. Но всё равно запрос не проходит. Подскажите, в чём может быть проблема?
      в типе integer убери "(...)" и вместо этого пользуйся другими типами, вроде smallint или serial...

      Добавлено
      и учти, если ты поле заключаешь в ковычки, то и потом в запросах не забывай их ставить ))
        Вот так сделал:
        ExpandedWrap disabled
          СREATE TABLE "xgb_chidoridev"."cd_pages" ("id" smallint, "name" character varying(255), "title" character varying(255), "rights" smallint, "priority" smallint, "uopen" text, "uclose" text, "updatetime" smallint, "createtime" smallint, "theme" character varying(255), PRIMARY KEY ("id")) WITHOUT OIDS


        Всё равно ошибка вылетает :(
          Цитата Serafim @
          Всё равно ошибка вылетает :(

          та же ошибка?

          Цитата Serafim @
          "xgb_chidoridev"

          тебе все в кавычки принципиально нужно? )))
            Цитата Silver Soft @
            та же ошибка?

            ERROR: syntax error at or near "СREATE"
            LINE 1: СREATE TABLE "xgb_chidoridev"."cd_pages" ("id" smallint, "na...

            Цитата Silver Soft @
            тебе все в кавычки принципиально нужно? )))

            Ну это phpPgAdmin по умолчанию ставит :) Просто пока не особо знаком с синтаксисом Postgres, поэтому и использую его интерфейс
              вот у меня код создания таблицы:

              ExpandedWrap disabled
                CREATE TABLE phone.stat_201108
                (
                  id integer,
                  authid bigint,
                  dialpeerid bigint,
                  "SRCnum" character varying(50),
                  "DSTnum" character varying(50),
                  "ElapsedTime" bigint,
                  "TimeBegin" timestamp(6) without time zone,
                  "TimeConnect" timestamp(0) without time zone,
                  "TimeDisconnect" timestamp(0) without time zone,
                  "DisconnectCode" character varying(100),
                  "DisconnectInitiator" character varying(20),
                  "QoS" double precision,
                  "SRCproto" character varying(100),
                  "DSTProto" character varying(100),
                  "SRCIP" inet,
                  "DSTIP" inet,
                  "SRCBytesIn" bigint,
                  "DSTBytesIn" bigint,
                  "CallId" integer,
                  "SRCTarifId" integer,
                  "SRCDuration" integer,
                  "SRCCost" double precision,
                  "SRCClientId" integer,
                  "DSTTarifId" integer,
                  "DSTDuration" integer,
                  "DSTCost" double precision,
                  "DSTClientId" integer,
                  "DSTPrefixId" integer,
                  "RootGroup" integer,
                  "DateAdd" timestamp without time zone
                )
                WITH (
                  OIDS=FALSE
                );
                ALTER TABLE phone.stat_201108_old OWNER TO postgres;
                Цитата Silver Soft @
                тебе все в кавычки принципиально нужно? )))

                ExpandedWrap disabled
                  СREATE TABLE cd_pages (id smallint, name character varying(255), title character varying(255), rights smallint, priority smallint, uopen text, uclose text, updatetime smallint, createtime smallint, theme character varying(255), PRIMARY KEY (id)) WITHOUT OIDS


                Один хрен - эррор:
                Цитата
                ERROR: syntax error at or near "СREATE"
                LINE 1: СREATE TABLE cd_pages (id smallint, name character varying(2...
                  "xgb_chidoridev" убери тут хотя бы ))

                  и лучше пользуйся pgAdmin'ом )) им удобней ))

                  Добавлено
                  http://www.pgadmin.org/download/
                    Цитата Silver Soft @
                    вот у меня код создания таблицы:

                    ExpandedWrap disabled
                      СREATE TABLE cd_pages (
                          id smallint,
                          "name" character varying(255),
                          "title" character varying(255),
                          rights smallint,
                          priority smallint,
                          uopen text,
                          uclose text,
                          updatetime smallint,
                          createtime smallint,
                          "theme" character varying(255),
                          PRIMARY KEY (id)
                      ) WITHOUT OIDS


                    Всё равно не работает :(

                    Добавлено
                    И вот так тоже:

                    Цитата
                    Ошибка SQL:

                    ERROR: syntax error at or near "СREATE"
                    LINE 1: СREATE TABLE cd_pages (
                    ^
                    В операторе:
                    ExpandedWrap disabled
                      СREATE TABLE cd_pages (
                          id smallint,
                          "name" character varying(255),
                          "title" character varying(255),
                          rights smallint,
                          priority smallint,
                          uopen text,
                          uclose text,
                          updatetime smallint,
                          createtime smallint,
                          "theme" character varying(255),
                          PRIMARY KEY (id)
                      )
                      WITH (
                        OIDS=FALSE
                      )
                    Сообщение отредактировано: Serafim -
                      чего-то мне кажется, что phpPgAdmin ерундовничает... я ошибки не вижу ) вроде все написано верно.. во только ощущение, что CREATE (С русская стоит) )))
                        пс. а почему id smallint. может нужен тип serial?
                          Цитата Silver Soft @
                          во только ощущение, что CREATE (С русская стоит) )))

                          красавец! :dance: Просто когда в 10ый раз правил запрос - первая буква потерялась, перепечатал похоже на русском :rolleyes:

                          Добавлено
                          Цитата ViktorXP @
                          пс. а почему id smallint. может нужен тип serial?

                          ну дык яж майсикьюэльщик :) Вы мне тыкните что лучше и где, я запомню и подправлю
                            для id лучше конечно serial, но я иногда и просто integer использую))
                              serial это типа bigint auto increment
                                Цитата Silver Soft @
                                Просто когда в 10ый раз правил запрос - первая буква потерялась, перепечатал похоже на русском

                                бывает)) со всеми бывает )) а если еще не спать сутками, то это уже самая частая ошибка )))
                                1 пользователей читают эту тему (1 гостей и 0 скрытых пользователей)
                                0 пользователей:


                                Рейтинг@Mail.ru
                                [ Script execution time: 0,0468 ]   [ 14 queries used ]   [ Generated: 21.06.25, 13:00 GMT ]