URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID9
Нить номер: 4836
[ Назад ]

Исходное сообщение
"Вопрос по create table - error"

Отправлено samara , 12-Ноя-05 16:44 
Привет! Всем!

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

1  CREATE TABLE `my_table` (
2  `ID` int(18) NOT NULL auto_increment,
3  `MOD_ID` varchar(40) default NULL,00',
4  `NAME` varchar(255) NOT NULL default '',
   ..............
   .............
8  PRIMARY KEY  (`ID`),
9  KEY `id_dom_pl` (`ACTIVE`,`NEXT_EXEC`)
10 ) ENGINE=MyISAM DEFAULT CHARSET=cp1251 AUTO_INCREMENT=37 ;
11

ERROR 1064 at line 2: You have an error in your SQL syntax.  Check the
manual t
hat corresponds to your MySQL server version for the right syntax to use
near 'D
EFAULT CHARSET=cp1251 AUTO_INCREMENT=37' at line 10

верно ли предположение, что нельзя делать так AUTO_INCREMENT=37,
на 2-ой   `ID` int(18) NOT NULL auto_increment


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


Содержание

Сообщения в этом обсуждении
"Вопрос по create table - error"
Отправлено GD , 13-Ноя-05 16:02 
>Привет! Всем!
>
>Подскажите, пожалуйста не могу найти ошибку
>вернее я не знаю все варианты правильного запроса
>
>1  CREATE TABLE `my_table` (
>2  `ID` int(18) NOT NULL auto_increment,
>3  `MOD_ID` varchar(40) default NULL,00',
>4  `NAME` varchar(255) NOT NULL default '',
>   ..............
>   .............
>8  PRIMARY KEY  (`ID`),
>9  KEY `id_dom_pl` (`ACTIVE`,`NEXT_EXEC`)
>10 ) ENGINE=MyISAM DEFAULT CHARSET=cp1251 AUTO_INCREMENT=37 ;
>11
>
>ERROR 1064 at line 2: You have an error in your SQL
>syntax.  Check the
>manual t
>hat corresponds to your MySQL server version for the right syntax to
>use
>near 'D
>EFAULT CHARSET=cp1251 AUTO_INCREMENT=37' at line 10
>
>верно ли предположение, что нельзя делать так AUTO_INCREMENT=37,
>на 2-ой   `ID` int(18) NOT NULL auto_increment
>
>
>в первый раз вижу что после скобки что-то можно задавать

правильно ли я понимаю, что вы дапм от 4.1+ пытаетесь влить в 4.0-?
если угадал, то синтаксис между 4.0 и 4.1 поменялся


"Вопрос по create table - error"
Отправлено samara , 14-Ноя-05 09:20 

>>EFAULT CHARSET=cp1251 AUTO_INCREMENT=37' at line 10
>>
>>верно ли предположение, что нельзя делать так AUTO_INCREMENT=37,
>>на 2-ой   `ID` int(18) NOT NULL auto_increment
>>
>>
>>в первый раз вижу что после скобки что-то можно задавать


Я не знаю от какой версии дамп, но вливаю в 4.0 это верно
. кажется вы правы
А можете рассказать об этой разнице

>правильно ли я понимаю, что вы дапм от 4.1+ пытаетесь влить в
>4.0-?
>если угадал, то синтаксис между 4.0 и 4.1 поменялся



"Вопрос по create table - error"
Отправлено Александр , 27-Сен-06 02:39 
Да таже проблема нужно залить дамп от 4.1 на 4.0 и выдает такую ошбку, помогите что делать?


"Вопрос по create table - error"
Отправлено samara , 27-Сен-06 09:49 
Всем Привет!

Про разницу версиях не знаю но суть такая:

Если имеется возможность удалить из всех CREATE TABLE
параметры о charset, то есть удалить
вот это:  DEFAULT CHARSET=cp1251 AUTO_INCREMENT=37
Это можно сделать простым скриптом на языке которым Вы владеете
либо в vi имеется тоже самое - замена строк
что то вроде
:1,$:s/DEFAULT/ /g
man vi

http://www.intuit.ru/department/os/linux/9/4.html

не зная vi толком я просто сперва везде удалил DEFAULT
а потом CHASET=cp1251  потому как не знаю как vi отнесётся к пробелу между  DEFAULT и CHARSET.
Думаю смысл понятен.

>Я не знаю от какой версии дамп, но вливаю в 4.0 это
>верно
> . кажется вы правы
>А можете рассказать об этой разнице



"Вопрос по create table - error"
Отправлено chip , 29-Сен-06 14:56 
>Всем Привет!
>
>Про разницу версиях не знаю но суть такая:
>
>Если имеется возможность удалить из всех CREATE TABLE
>параметры о charset, то есть удалить
>вот это:  DEFAULT CHARSET=cp1251 AUTO_INCREMENT=37
>Это можно сделать простым скриптом на языке которым Вы владеете
>либо в vi имеется тоже самое - замена строк
>что то вроде
>:1,$:s/DEFAULT/ /g
>man vi

Хотел бы я посмотреть на админа, который правит sql dump в 3 Гига редактором vi.

man ed
man sed
man awk


"Вопрос по create table - error"
Отправлено samara , 02-Окт-06 08:56 
Ну раз такой умный, дай конкретное решение.
Нормальный админ с такими проблемами не сталкивается и решает их сам.

Речь не шла о 3 Gb, поэтому свою проблему надо всегда описывать чётко и подробно.

>Хотел бы я посмотреть на админа, который правит sql dump в 3
>Гига редактором vi.
>
>man ed
>man sed
>man awk



"Вопрос по create table - error"
Отправлено chip , 02-Окт-06 13:01 
>Ну раз такой умный, дай конкретное решение.

sed -e 's|DEFAULT CHARSET=[a-zAZ0-9]*||g'

За Вами сравнение используемых в обоих случаях ресурсов.

>Нормальный админ с такими проблемами не сталкивается и решает их сам.

Вы привели решение. Я указал недочёт.

>Речь не шла о 3 Gb, поэтому свою проблему надо всегда описывать
>чётко и подробно.

Ну понятно, в маштабах одного мегабайта можно и дальше бамбук курить.


"Вопрос по create table - error"
Отправлено samara , 02-Окт-06 09:02 
Видимо ты их тех кто только болтает и не помогает людям.
Я дал оба решения.

Кстати твой ed никто не использует.

>Хотел бы я посмотреть на админа, который правит sql dump в 3
>Гига редактором vi.
>
>man ed
>man sed
>man awk



"Вопрос по create table - error"
Отправлено chip , 02-Окт-06 12:59 
>Кстати твой ed никто не использует.

1. Не припомню, чтобы мы переходила "на ты"
2. Неумение использовать Вами ed, не говорит, о том что его не использует.

>>Хотел бы я посмотреть на админа, который правит sql dump в 3
>>Гига редактором vi.
>>
>>man ed
>>man sed
>>man awk



"Вопрос по create table - error"
Отправлено samara , 04-Окт-06 08:53 
sed -e 's|DEFAULT CHARSET=[a-zAZ0-9]*||g'  -  всё гениальное просто.

Надеюсь Александр запомнил решение на всю жизнь, плюс уроки по sed.

Приношу извнинения если кого обидел.