mysql:12540
From: "KIMURA, Meiji" <"KIMURA, Meiji" <kimura804@xxxxxxxxxx>>
Date: Tue, 6 Dec 2005 16:59:15 +0900 (JST)
Subject: [mysql 12540] Re: 接続中のデータベース以外のデータベース名取得 SQL
こんばんわ、木村明治@キムラデービーです。
平野さんの環境はMySQL 5.0.16ということで、
MySQLの5.xでは、SHOW文の他に、一般的なDBにある情報スキーマが使えるので、
SHOW databasesの代わりに、
SELECT SCHEMA_NAME
FROM INFORMATION_SCHEMA.SCHEMATA;
を使って、これと、select database();を組み合わせてやれば、
お望みの結果が得られませんか?(すみません、試してはみてません....)
See.
http://dev.mysql.com/doc/refman/5.0/en/schemata-table.html
--- バリュー 平野 <hirano@xxxxxxxxxx> からのメッセージ:
> 平野と申します。
>
> 「接続中以外のデータベース一覧」
>
> を取得するSQLが書けずに困っています。
>
> --接続中のデータベース名
> select database();
>
> --存在するデータベース一覧
> show databases;
>
> この二つを駆使して、
> show databases not like (select database() limit 1);
> のように書きたいのですが、そもそもSHOWに使えるLike
> 条件には、NOTを付加できない様子。
>
> 良い案をご存知の方、よろしくお願い致します。
>
> Windows2000 sp4
> MySQL 5.0.16-nt (sjis)
> MySQL ODBC 3.51 Driver
> ADO(MDAC2.7 SP1)
(snip)
12539 2005-12-06 16:27 [バリュー 平野 <hira] 接続中のデータベース以外のデータベース名取得SQL -> 12540 2005-12-06 16:59 ┗["KIMURA, Meiji" <kim] 12541 2005-12-06 17:17 ┗[バリュー 平野 <hira]