mysql:3515
From: hirofujita8523 <hirofujita8523 <hirofujita8523@xxxxxxxxxx>>
Date: Sun, 08 Apr 2001 20:33:44 +0900
Subject: [mysql 03515] Borland での挙動について
先日、Borland のコンパイルの件で助けていただいた藤田です。
今回、Borland での挙動で困っています。
以下のソースを実行すると、main() 終了時にクラッシュしてしまいます。
#include <windows.h>
#include <stdio.h>
#define NO_CLIENT_LONG_LONG
#include "mysql.h"
int main() {
MYSQL *msql = mysql_init(NULL);
msql = mysql_real_connect(msql, NULL, NULL, NULL,
"my", 0, NULL, 0);
mysql_query(msql, "CREATE TABLE user (id INT NOT NULL,"
" name VARCHAR(32), PRIMARY KEY (id));");
mysql_query(msql, "INSERT INTO user VALUES (1, 'aaa');");
mysql_query(msql, "INSERT INTO user VALUES (2, 'bbb');");
mysql_query(msql, "INSERT INTO user VALUES (3, 'ccc');");
mysql_query(msql, "SELECT * FROM user;");
MYSQL_RES *res = mysql_store_result(msql);
MYSQL_ROW row;
row = mysql_fetch_row(res);
printf("[%s:%s]\n", row[0], row[1]);
mysql_data_seek(res, 0); // この行を抜けば正常に動作する
row = mysql_fetch_row(res);
printf("[%s:%s]\n", row[0], row[1]);
mysql_free_result(res);
mysql_close(msql);
return 0;
}
Borland 5.5、5.01 で以下のパターンを試しています。
(1).MySQL-3.22-Win32評価版(3.22.16-gamma)で、winclients-3.23.09a-sjis
(2).MySQL-3.22-Win32評価版(3.22.16-gamma)で、winclients-3_22_28_sjis
(3).英語版 3.23.36 をインストールしなおして。
このうち、Borland では、(2) だけが動作します。
しかし、mysql_num_fields() では、常に 0 しか返ってきません。
日本語版の方は、バージョンの不整合という理由がありえるとも思うのですが、
英語版が上手く動作しないのはおかしいと思うのですが...。
ちなみに VC6.0 では全ての組み合わせで正常に動作します。
どなたかこの症状の解消する術を教えていただけないでしょうか?
それとも、Borland で MySQL を使おうと思うこと自体が無謀なのでしょうか?
どうか教えてください。
よろしくお願いします。
__________________________________________________
Do You Yahoo!?
インスタントメッセージを送ろう! Yahoo!メッセンジャー
http://messenger.yahoo.co.jp/
-> 3515 2001-04-08 20:33 [hirofujita8523 <hiro] Borland での挙動について 3519 2001-04-09 11:53 ┗[Kengo Jinno <kengo@x] 3537 2001-04-11 12:06 ┗[hirofujita8523 <hiro]