powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Создание таблиц по шаблону
4 сообщений из 4, страница 1 из 1
Создание таблиц по шаблону
    #39638707
dmneedall
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Здравствуйте, Други!

Не пойму в чем проблема. Пытаюсь выполнить такой запрос в phpMyAdmin:

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
  SET @t_name = 'orgs';
  SET @comm = 'орг.структура предприятий';
  DROP TABLE IF EXISTS @t_name;
  CREATE TABLE  @t_name( 
    id INT(11) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT 'id',
    id_user int(11) UNSIGNED NOT NULL COMMENT 'id пользователя автора записи',
    id_org int(11) UNSIGNED NOT NULL DEFAULT 0 COMMENT 'id структурного подразделения',
    id_base int(11) UNSIGNED DEFAULT NULL COMMENT 'id записи в момент создания',
    id_event_t int(11) UNSIGNED NOT NULL COMMENT 'id Вида записи',
    id_ui_event int(11) UNSIGNED NOT NULL COMMENT 'id события в интерфейсе',
    date_rec timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT 'Дата записи',
    PRIMARY KEY (id)
  ) 
  ENGINE = INNODB
  COMMENT = @comm; 



Ругается! НО НА ШТО!!!???
Поможите плз.!
...
Рейтинг: 0 / 0
Создание таблиц по шаблону
    #39638715
vkle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
На глупости всякие и ругается. В инструкци же аглицким по белому написано: https://dev.mysql.com/doc/refman/5.7/en/user-variables.html They cannot be used directly in an SQL statement as an identifier or as part of an identifier, such as in contexts where a table or database name is expected, or as a reserved word such as SELECT. И дальше там пример использования PREPARE для такого случая.
...
Рейтинг: 0 / 0
Создание таблиц по шаблону
    #39638731
dmneedall
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Да уж! Глупости ... Т.е. нормально использовать переменные нельзя. OK

Ну а здесь то че не нравится ему?

Код: sql
1.
2.
3.
4.
5.
6.
set @t = 'tbl';
set @q = concat('drop table if exist ', @t);

prepare del_tbl from @q;
execute del_tbl;
DEALLOCATE PREPARE del_tbl;
...
Рейтинг: 0 / 0
Создание таблиц по шаблону
    #39638732
dmneedall
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Все, разобрался.

не EXIST, а EXISTS! И заработало. Спасибо за наводку.
...
Рейтинг: 0 / 0
4 сообщений из 4, страница 1 из 1
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Создание таблиц по шаблону
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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