mysql:661
From: 民斗 <民斗 <tommy@xxxxxxxxxx>>
Date: Sat, 30 Jan 1999 00:46:12 +0900
Subject: [mysql 00661] Re: mysql_reload
民斗です。 [Subject: [mysql 00657] Re: mysql_reload] [Date: Thu, 28 Jan 1999 19:55:28 +0900 From:takeshi@xxxxxxxxxx] > takeshi> 3.22.14 のマニュアルで C API の説明が違うことに気づきました。 > > しつれいしました。違うのではなくて、 > "refresh が無い" の間違いです。 > mysql_reload は mysql_refresh(a,REFRESH_GRANT) で再定義されてました。 > > takeshi> で、民斗さんの mysql-ruby-2.1.1 に対するパッチを添付します > > こちらが正解のパッチです。 このパッチではちょっとまずいです。 refresh() の引数 VALUE a は int 型の値ではなくて、Ruby のオブジェクトを 指定する必要があるので…。 ということで、2.1.1 に対するパッチを添付します。単純に mysql_refresh() を追加したのと REFRESH_* の定数を追加しただけです。 で、毅さんのパッチを見て思ったんですが、やっぱり MYSQL_VERSION_ID とか でクライアント(というかC API)のバージョンを判断して色んなバージョンで make できるようにしておいた方がいいのかな…と…。 今は自分のことしか考えてないんで (^^; 最新の MySQL バージョン用になって しまっていますが、いつごろのバージョンから対応した方がいいでしょう? 3.20.xx にも対応してた方がいいですかね? やっぱり…。 -- 民斗 <tommy@xxxxxxxxxx> --- mysql.c.orig Sat Jan 30 00:29:56 1999 +++ mysql.c Sat Jan 30 00:18:16 1999 @@ -257,4 +257,13 @@ } +/* refresh(r) */ +static VALUE refresh(VALUE obj, VALUE r) +{ + MYSQL* m = GetHandler(obj); + if (mysql_refresh(m, NUM2INT(r)) != 0) + mysql_raise(m); + return TRUE; +} + /* reload() */ static VALUE reload(VALUE obj) @@ -624,4 +633,5 @@ rb_define_method(cMysql, "ping", ping, 0); rb_define_method(cMysql, "query", query, 1); + rb_define_method(cMysql, "refresh", refresh, 1); rb_define_method(cMysql, "reload", reload, 0); rb_define_method(cMysql, "select_db", select_db, 1); @@ -639,4 +649,9 @@ rb_define_const(cMysql, "CLIENT_COMPRESS", INT2NUM(CLIENT_COMPRESS)); rb_define_const(cMysql, "CLIENT_ODBC", INT2NUM(CLIENT_ODBC)); + rb_define_const(cMysql, "REFRESH_GRANT", INT2NUM(REFRESH_GRANT)); + rb_define_const(cMysql, "REFRESH_LOG", INT2NUM(REFRESH_LOG)); + rb_define_const(cMysql, "REFRESH_TABLES", INT2NUM(REFRESH_TABLES)); + rb_define_const(cMysql, "REFRESH_HOSTS", INT2NUM(REFRESH_HOSTS)); + rb_define_const(cMysql, "REFRESH_STATUS", INT2NUM(REFRESH_STATUS)); /* MysqlRes object method */
-> 661 1999-01-30 00:46 [民斗 <tommy@xxxxxxxx] Re: mysql_reload 665 1999-01-31 12:35 ┣[<takeshi@xxxxxxxxxx>] 765 1999-03-08 16:06 ┗[Yasuaki Tanaka <yasu] データの変換 771 1999-03-09 13:27 ┗[kazumasa Nakamura <k]