こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

締切り済みの質問

テーブルが削除できない

MySQL5でアクセスの「入金」という日本語名のテーブルをインポートしました。しかしMySQLではテーブル名がバグってしまい、MySQL Command Line Clientで以下のように削除しようとしても「Unknown table 蜈・驥・」と出て削除できません。削除したいテーブルが指定できず困っています。強制的に削除する方法はないでしょうか?

set names sjis;
use データベース名;
drop tabe 入金;

投稿日時 - 2007-11-24 20:26:47

QNo.3543621

困ってます

このQ&Aは役に立ちましたか?

0人が「このQ&Aが役に立った」と投票しています

-広告-
-広告-

回答(3)

ANo.3

逆に、必要なテーブルだけバックアップした上で、データベースを作り直したらどうでしょうか。

文字化けしているテーブルはインポートしたものとのことなので、データは外にあるので消しても問題なし。元々あったものは・・・まさかそうはなっていないですよね。(であれば、事前に文字化けはわかるわけで、インポートしてないですよね)

投稿日時 - 2007-12-09 01:43:44

ANo.2

文字コードの問題かもしれないので、入力の文字コードを変えて試してみてください。

あと、
show tables;
ででてきた表名をそのままコピー&ペーストでやるとどうですか?

投稿日時 - 2007-11-27 10:54:34

ANo.1

MySQLでは、日本語の表名を使うと、文字化けしたり、show tablesで表示されなかったりすることは事実で、日本MySQLユーザ会でも、「日本語の名前は使用しない方がいい」と提唱しています。

>しかしMySQLではテーブル名がバグってしまい

バグって、誰のバグですか?
安易に、そういった表現を使って欲しくないのですけど。

「入金」という名称の表が、実際に存在するか、確認していますか?

例えば、以下のSQLを実行すると、件数が表示されますか?

select count(*) from 入金;

もし、「表がない」といったエラーが出るなら、表ができていないのだと思いますけど?
もし、件数が表示されるなら、「drop table 入金」で削除できると思います。

投稿日時 - 2007-11-24 23:06:23

-広告-
-広告-

あなたにオススメの質問

-広告-
-広告-