Тупеж с MySQL в hook_install()
Прислано: Xandr Morris@drupal.org
чт, 22/01/2009 - 08:11
Не могу понять одну фишку. Начал писать hook_install() и запутался с друпаловскими типами MySQL-полей.
Помню, что где-то в сети находил, а вот где - хз.
То что int и auto_increment - тут все ясно, как говорится ))))
А вот с остальными полями че-т запутался.
Короче, нужно что-то типа этого: http://drupal.org/node/159605
но не под 6-й, а под 5-й Drupal.
Помогите, плиз, ссылочкой, если кто знает )))
- Xandr Morris@drupal.org's blog
- Для комментирования войдите или зарегистрируйтесь
В 5-ке все делается средствами MYSQL
что-то типа того ))
function dataimport_install() { switch ($GLOBALS['db_type']) { case 'mysql': case 'mysqli': db_query(" CREATE TABLE dataimport_sku ( nid int(11) NOT NULL, sku int(11) NOT NULL, `type` varchar(50) NOT NULL, UNIQUE KEY (sku, `type`, nid) ) DEFAULT CHARSET=utf8 "); break; } @mkdir(file_directory_path().'/dataimport',777); }
- Для комментирования войдите или зарегистрируйтесь
Собственно, синтаксис 5-го Друпала я знаю. А вот названия типов позабывал. Например, как сделать smallint и т.д.
Вот и прошу кинуть ссылку, если такое где-то есть (должно быть!!).
- Для комментирования войдите или зарегистрируйтесь
http://www.mysql.ru/docs/man/Column_types.html
- Для комментирования войдите или зарегистрируйтесь
Это всё, конечно, хорошо. Но, кажется, мой вопрос был не совсем правильно понят. КАК ЭТИ ТИПЫ В ДРУПАЛЕ ВЫГЛЯДЯТ? По-моему, они несколько отличаются. Или нет?
Хорошо. Сделаем проще.
Версия MySQL - Версия в Drupal 5 (в hook_install() )
TINYINT - 'type'=>'???'
SMALLINT - 'type'=>'???'
MEDIUMINT - 'type'=>'???'
INT - 'type'=>'int'
INTEGER - 'type'=>'int'
BIGINT - 'type'=>'???'
FLOAT - 'type'=>'???'
DOUBLE - 'type'=>'???'
REAL - 'type'=>'???'
DECIMAL - 'type'=>'???'
NUMERIC - 'type'=>'???'
DATE - 'type'=>'???'
DATETIME - 'type'=>'???'
TIMESTAMP - 'type'=>'???'
TIME - 'type'=>'???'
YEAR - 'type'=>'???'
CHAR - 'type'=>'???'
VARCHAR - 'type'=>'???'
TINYBLOB - 'type'=>'???'
TINYTEXT - 'type'=>'???'
BLOB - 'type'=>'???'
TEXT - 'type'=>'text'
MEDIUMBLOB - 'type'=>'???'
MEDIUMTEXT - 'type'=>'???'
LONGBLOB - 'type'=>'???'
LONGTEXT - 'type'=>'???'
ENUM - 'type'=>'???'
SET - 'type'=>'???'
- Для комментирования войдите или зарегистрируйтесь
Ничего этого в 5-ке нету. Там в query пишется обыкновенный MySQL поэтому и были отправлены на сайт мускула.
- Для комментирования войдите или зарегистрируйтесь
Ясно. Вот за это спасибо. С чистым мусклом проблем нету.
- Для комментирования войдите или зарегистрируйтесь



Комментарии