Не нравятся результаты поиска? Попробуйте другой поиск!
dle-faq.ru FAQ (все вопросы) MySQL Как обратиться к таблице, чтоб добавить туда столбцы?

Как обратиться к таблице, чтоб добавить туда столбцы?


     06.08.2015    MySQL    782

вопрос
Помогите правильно изменить запрос к бд, чтоб добавить туда новые столбцы. Читал мануалы, пробывал, вылазят ошибки всякие.
Вот запрос:

UPDATE TABLE `dle_users` (
  `user_color` varchar(10) NOT NULL DEFAULT 'user',
  `user_rank` int(1) NOT NULL DEFAULT '1',
  `user_access` int(1) NOT NULL DEFAULT '4',
  `user_roomid` int(6) NOT NULL DEFAULT '1',
  `user_kick` text NOT NULL,
  `user_mute` varchar(16) NOT NULL,
  `mute_time` int(12) NOT NULL,
  `user_flood` int(1) NOT NULL,
  `user_theme` varchar(16) NOT NULL DEFAULT 'Default',
  `user_sex` int(1) NOT NULL DEFAULT '0',
  `user_age` int(2) NOT NULL DEFAULT '0',
  `user_avatar` varchar(50) NOT NULL DEFAULT 'default_avatar.png',
  `upload_count` int(11) NOT NULL DEFAULT '0',
  `upload_access` int(11) NOT NULL DEFAULT '1',
  `user_sound` int(1) NOT NULL DEFAULT '2',
  `temp_pass` varchar(40) NOT NULL DEFAULT '0',
  `temp_time` int(10) NOT NULL DEFAULT '0',
  `user_tumb` varchar(100) NOT NULL DEFAULT 'default_avatar_tumb.png',
  `guest` int(1) NOT NULL DEFAULT '0',
  `verified` int(1) NOT NULL DEFAULT '1',
  `valid_key` varchar(64) NOT NULL,
  `user_ignore` text NOT NULL,
  `first_check` int(10) NOT NULL DEFAULT '0',
  `join_chat` int(10) NOT NULL DEFAULT '0',
  `email_count` int(1) NOT NULL DEFAULT '0',
  `user_friends` text NOT NULL,
  `region` varchar(100) NOT NULL,
  `city` varchar(100) NOT NULL,
  `count` int(10) NOT NULL DEFAULT '0',
  PRIMARY KEY (`user_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=1;

Mysql возвращает мне такую ошибку - "#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'TABLE `dle_users` ( `user_color` varchar(10) NOT NULL DEFAULT 'user', `use' at line 1"

Ответил: Gameer


DomiTori, и да, UPDATE не поможет, он обновляет данные а не создает новые колонки!

Вот мануал, учи https://dev.mysql.com/doc/refman/5.7/en/alter-table.html

Комментарии пользователей (6)

Gameer
226

1124 | 396

Gameer - 6 августа 2015 13:13 - Эксперт

У тебя база "InnoDB" или же "MyISAM" ?

Истина в противоречии.​

DomiTori
10

136 | 21

DomiTori - 6 августа 2015 13:22 - Юзер

Не обратил внимания. Заменил в конце на "MyISAM". Ошибка таже

Gameer
226

1124 | 396

Gameer - 6 августа 2015 13:24 - Эксперт

***Комментарий удален***

Истина в противоречии.​

DomiTori
10

136 | 21

DomiTori - 7 августа 2015 00:36 - Юзер

Прочитал я этот мануал и прочие, не помогло. Одиночный запрос на каждую строку работает как надо, но если перечислять список создаваемых строк, вылазят ошибки. Порой этот mysql не понять, чего он хочет

Gameer
226

1124 | 396

Gameer - 7 августа 2015 09:50 - Эксперт

DomiTori, божэ мой
ALTER TABLE  `dle_users` ADD  `user_color` varchar(10) NOT NULL DEFAULT 'user' ,
ADD  `user_rank` int(1) NOT NULL DEFAULT '1',
ADD  `user_access` int(1) NOT NULL DEFAULT '4',
ADD  `user_roomid` int(6) NOT NULL DEFAULT '1',
ADD  `user_kick` text NOT NULL,
ADD  `user_mute` varchar(16) NOT NULL,
ADD  `mute_time` int(12) NOT NULL,
ADD  `user_flood` int(1) NOT NULL,
ADD  `user_theme` varchar(16) NOT NULL DEFAULT 'Default',
ADD  `user_sex` int(1) NOT NULL DEFAULT '0',
ADD  `user_age` int(2) NOT NULL DEFAULT '0',
ADD  `user_avatar` varchar(50) NOT NULL DEFAULT 'default_avatar.png',
ADD  `upload_count` int(11) NOT NULL DEFAULT '0',
ADD  `upload_access` int(11) NOT NULL DEFAULT '1',
ADD  `user_sound` int(1) NOT NULL DEFAULT '2',
ADD  `temp_pass` varchar(40) NOT NULL DEFAULT '0',
ADD  `temp_time` int(10) NOT NULL DEFAULT '0',
ADD  `user_tumb` varchar(100) NOT NULL DEFAULT 'default_avatar_tumb.png',
ADD  `guest` int(1) NOT NULL DEFAULT '0',
ADD  `verified` int(1) NOT NULL DEFAULT '1',
ADD  `valid_key` varchar(64) NOT NULL,
ADD  `user_ignore` text NOT NULL,
ADD  `first_check` int(10) NOT NULL DEFAULT '0',
ADD  `join_chat` int(10) NOT NULL DEFAULT '0',
ADD  `email_count` int(1) NOT NULL DEFAULT '0',
ADD  `user_friends` text NOT NULL,
ADD  `region` varchar(100) NOT NULL,
ADD  `city` varchar(100) NOT NULL,
ADD  `count` int(10) NOT NULL DEFAULT '0';


Как же все просто, просто учить нужно и смотреть. Бери книги и учи, если уж по мануала не можешь сделать.

Истина в противоречии.​

DomiTori
10

136 | 21

DomiTori - 7 августа 2015 12:01 - Юзер

Gameer,
спасибо. то что нужно

Чтобы комментировать - войдите или зарегистрируйтесь на сайте

Похожие вопросы