Проблема с синтаксисом SQL (возможно, простая) - PullRequest
1 голос
/ 17 апреля 2010

Я выполняю пользовательскую работу с базой данных для модуля для Drupal и получаю следующую ошибку SQL при попытке создать мою таблицу:

предупреждение пользователя: у вас ошибка в синтаксисе SQL; обратитесь к руководству, соответствующему вашей версии сервера MySQL, чтобы узнать правильный синтаксис для использования рядом с 'DEFAULT NULL, rooms INT DEFAULT NULL, adults INT DEFAULT NULL, children' в строке 14 запроса: CREATE TABLE dr_enquiry (eId INT unsigned NOT NULL auto_increment, eKey VARCHAR (16) NOT NULL, dateSent INT NOT NULL ПО УМОЛЧАНИЮ 0, status VARCHAR (30) NOT NULL ПО УМОЛЧАНИЮ «Без ответа», custName VARCHAR (50) NOT NULL, custEmail VARCHAR (200) NOT NULL, custPhone VARCHAR (25) NOT NULL, custCountry VARCHAR (40) NOT NULL, custIP VARCHAR (11) DEFAULT NULL, offerName VARCHAR (100) NOT NULL, offerURL VARCHAR (200) NOT NULL, arrival DATETIME DEFAULT NULL, departure DEFAULT NULL, rooms INT DEFAULT NULL, adults INT DEFAULT NULL, children INT DEFAULT NULL, childAges VARCHAR (32 ) DEFAULT NULL, toddlers INT DEFAULT NULL, toddlerAges VARCHAR (32) DEFAULT NULL, catering VARCHAR (255) DEFAULT NULL, comments VARCHAR (255) DEFAULT NULL, agent VARCHAR (100) NEFAULT , voucher VARCHAR (100) DEFAULT NULL, ПЕРВИЧНЫЙ КЛЮЧ (eId)) / *! 40100 SET CHARACTER DEFAULT UTF8 * / in / home / t ravelco / public_html / includes / database.inc в строке 550.

Ответы [ 2 ]

1 голос
/ 17 апреля 2010

В поле 'вылет', похоже, нет типа, например, varchar, mediumint и т. Д. Попробуйте добавить его и посмотрите, решит ли это вашу проблему:)

0 голосов
/ 17 апреля 2010

Обнуляемость не устанавливается с помощью ограничения DEFAULT. Таким образом, компилятор блокируется в каждом случае DEFAULT NULL. Таким образом, оператор create должен выглядеть так:

CREATE TABLE dr_enquiry ( 
      eId INT unsigned NOT NULL auto_increment
      , eKey VARCHAR(16) NOT NULL
      , dateSent  INT NOT NULL DEFAULT 0
      , status VARCHAR(30) NOT NULL DEFAULT 'Unanswered'
      , custName VARCHAR(50) NOT NULL
      , custEmail  VARCHAR(200) NOT NULL
      , custPhone VARCHAR(25) NOT NULL
      , custCountry  VARCHAR(40) NOT NULL
      , custIP VARCHAR(11) NULL
      , offerName  VARCHAR(100) NOT NULL
      , offerURL VARCHAR(200) NOT NULL
      , arrival  DATETIME NULL
      , departure DATETIME NULL
      , rooms  INT NULL
      , adults INT NULL
      , children  INT NULL
      , childAges VARCHAR(32) NULL
      , toddlers  INT NULL
      , toddlerAges VARCHAR(32) NULL
      , catering  VARCHAR(255) NULL
      , comments VARCHAR(255) NULL
      , agent VARCHAR(100) NULL
      , voucher  VARCHAR(100) NULL
      , PRIMARY KEY (eId) 
      ) 

(О, и у вылета не было типа данных, как упоминалось в richsage. Я предположил, что это был DateTime.)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...