プロが教える店舗&オフィスのセキュリティ対策術

mysql> show tables;
+-----------------+
| Tables_in_db1 |
+-----------------+
| a |
| hizu_ziko |
| hizuke |
| itii |
| renzoku |
| syokiti_renzoku |
| tb |
| tb1_bk |
| tb1_bkc |
| tb1a |
| tb1b |
| tb1c |
| tb1d |
| tb1e |
| tb1f |
| tb1k |
| uniq |
+-----------------+
17 rows in set (0.00 sec)

mysql> create table tb1(bang varchar(10),nama varchar(10),tosi int);
ERROR 1813 (HY000): Tablespace '`db1`.`tb1`' exists.
mysql> drop table tb1;
ERROR 1051 (42S02): Unknown table 'db1.tb1'
--------------------------------------------------------------
以上ですがコマンドプロンプトの出力内容をそのまま
コピーペしました。
それで
  mysql> create table tb1(bang varchar(10),nama varchar(10),tosi int);
1) ERROR 1813 (HY000): Tablespace '`db1`.`tb1`' exists.
  エラーを直訳すると
  エラー 1813 (HY000): テーブルスペース '`db1`.`tb1`' が存在します。
  しかし冒頭の
  mysql> show tables;には問題の tb1 はないですよね!?

そこで
  mysql> DROP TABLE tb1;
2) ERROR 1051 (42S02): Unknown table 'db1.tb1'
  エラー 1051 (42S02): 不明なテーブル 'db1.tb1'
-------------------------------------------------
以上ですが
1)ですがERROR 1813 (HY000):ではテーブルスペース '`db1`.`tb1`'
が存在しているのなら、show tables;Tables_in_db1のなかには
   tb1 はないですよね、

   2)の DROP TABLE tb1;で削除しましたが 不明なテーブル ということは
    存在していないことになります。
   以上の 1)と2)は矛盾していないでしょうか?
 
   よろしくお願いします。

質問者からの補足コメント

  • うれしい

    C:\MAMP\db\mysql\db1のdb1フォルダ毎 削除(移動)後
    新たに作り直したところ、うまくいきました。
     
    mysql> use db1
    Database changed
    mysql> create table tb1(bang varchar(10),nama varchar(10),tosi int);
    Query OK, 0 rows affected (0.03 sec)

    その後旧 db1 の中にあるファイルをコピーペしようか迷っています。
    壊れてデータが上書されないようにしたいとおもいます。

    No.1の回答に寄せられた補足コメントです。 補足日時:2021/06/02 17:34

A 回答 (2件)

DROP TABLESPACE tb1

この回答への補足あり
    • good
    • 1
この回答へのお礼

ありがとうございます。
mysql> DROP TABLESPACE tb1;
ERROR 1529 (HY000): Failed to drop TABLESPACE tb1
mysql> DROP TABLE tb1;
ERROR 1051 (42S02): Unknown table 'db1.tb1'
--------------
エラー 1529 (HY000): テーブルスペース tb1 の削除に失敗しました

なかなか手ごわいですね!

お礼日時:2021/06/02 17:33

単純に言えばテーブルとテーブルスペースは違うものなので


テーブルを作ろうとしてテーブルスペースはもうあるよというのと
テーブルを削除しようとしてテーブルはないよというのは
矛盾しません
    • good
    • 1
この回答へのお礼

ありがとうございました。
今後ともよろしくお願いいたします。

お礼日時:2021/06/02 19:18

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!