Новости
Документация
Download
Webboard
Поиск
FAQ/ЧаВо
Обратная связь




MySQL.RU - Webboard



Вернуться
Длина строки запроса (C API) (Demid) 26/08/2005 - 22:42:39
      Re: Длина строки запроса (C API) (Dinky) 26/08/2005 - 23:13:52
      Re: Длина строки запроса (C API) (demid) 26/08/2005 - 23:44:13
      Re: Длина строки запроса (C API) (Dinky) 27/08/2005 - 00:11:43
      Re: Длина строки запроса (C API) (demid) 27/08/2005 - 00:46:58
      Re: Длина строки запроса (C API) (Dinky) 27/08/2005 - 05:55:40
      Re: Длина строки запроса (C API) (demid) 27/08/2005 - 22:12:30
      Re: Посмотри переменные сервера (barfly) 29/08/2005 - 10:07:17
      Re: Посмотри переменные сервера (demid) 29/08/2005 - 12:29:13
      Re: Посмотри переменные сервера (Dinky) 29/08/2005 - 19:37:48
      Re: Посмотри переменные сервера (demid) 30/08/2005 - 06:17:46
      Re: Посмотри переменные сервера (demid) 30/08/2005 - 11:07:59
      Re: Покаяние. (demid) 30/08/2005 - 11:53:30
      Re: RTFM короче :) (Dinky) 30/08/2005 - 18:35:45

> Original message text:
> From: Demid - 26/08/2005 - 22:42:39
> Subject:Длина строки запроса (C API)
> -----------------
> Использую C API на линукс платформе.
> Текст примерно следующий:
> ...
> MySQL *db;
> char *query;
> ...
> sprintf(query,"bla-bla\
> more bla-bla\
> and one more bla");
> if (mysql_real_query(db,query,strlen(query)){printf(mysql_error(db));exit(1);}
> ...
> Если запрос, помещаемый в query достаточно короткий, то он выполняется без проблем. Если запрос длинный, то он усекается до примерно 93 символов, и сервер, естественно, возвращает ошибку и говорит мол "запрос неверен, иди учи SQL". И в сообщении об ошибке он показывает усеченный запрос...
> Если выводить на экран query, то в ней содержится целиком запрос, каким он и должен быть, length(query) тоже выдает корректное значение. Даже если вписать в mysql_real_query третьим параметром просто число, меньшее 93, то отправится указанное число символов и сервер вернет ошибку, процитировав отправленное ему. Если писать любое число, большее 93-х, то отправляется только 93 символа из запроса...
> ПС: гуглил по инету, искал в этом форуме, ничего похожего, к сожалению, не нашел...
>
>


From: demid - 30/08/2005 - 06:17:46
Subject:Посмотри переменные сервера
-----------------
1) В логе ничего не сообщается. Только говорит о успешности останова/запуска, никаких ошибок...
2) Ну думаю, если бы запрос был неверным, то он показывалбы в каком месте этот запрос неверен. У меня жу он обрезает запрос в любом месте, какое попадется на 93-й символ.
Запрос, например такой: "CREATE TABLE log (time DATETIME,event VARCHAR(255));" - работает.
А вот такой запрос
"CREATE TABLE group (
id INT UNSIGNED NOT NULL AUTO_INCREMENT,
name VARCHAR NOT NULL,
description VARCHAR,
status VARCHAR,
privileges VARCHAR,
PRIMARY KEY (id)
);" - уже не проходит.
3. Делаю следующий скрипт:
****************
CREATE TABLE log (time DATETIME,event VARCHAR(255));

CREATE TABLE group (
id INT UNSIGNED NOT NULL AUTO_INCREMENT,
name VARCHAR(255) NOT NULL,
description VARCHAR(255),
status VARCHAR(255),
privileges VARCHAR(255),
PRIMARY KEY (id)
);
****************
Получаю такую ошибку:
****************
ERROR 1064 (42000) at line 3: You have an error in your SQL syntax; check the ma
nual that corresponds to your MySQL server version for the right syntax to use n
ear 'group (
id INT UNSIGNED NOT NULL AUTO_INCREMENT,
name VARCHAR(255) NOT N' at line 1
Press any key to continue...
****************
Первая таблица при этом создается, ошибка только при создании второй таблицы:
****************
mysql> show tables;
+-------------------+
| Tables_in_vipbase |
+-------------------+
| log |
+-------------------+
1 row in set (0.00 sec)
*****************
4. Как сделать, чтоб в сообщении на форуме цитировалось не самое первое сообщение, а предыдущее? :)


[Это сообщение - спам!]

Последние сообщения из форума

Уважаемые посетители форума MySQL.RU!
Убедительная просьба, прежде чем задавать свой вопрос в этом форуме, обратите внимание на разделы:
- ответы на наиболее часто задаваемые вопросы - FAQ
- раздел документация
- раздел поиск по сообщениям форума и документации
Также, старайтесь наиболее подробно указывать свою ситуацию (версию операционной системы, версию MySQL, версию программного обеспечения, по которому возникает вопрос, текст возникающих ошибок, и др.)
Помните, чем конкретнее Вы опишете ситуацию, тем больше шансов получить реальную помощь.
 Имя:
 E-mail:
 Тема:
 Текст:
Код подтверждения отправки: Code
23785



РЕКЛАМА НА САЙТЕ
  Создание сайтов | |