sql >> データベース >  >> RDS >> Mysql

外部キーを使用して列を削除する

    最初にキーをドロップする必要があります。あなたのテーブルの名前はわかりませんが、例を挙げて一般的な戦略を説明します。次の2つのInnoDBテーブルがあるとします。

    CREATE TABLE `A` (
       `id` int(10) unsigned NOT NULL auto_increment,
        PRIMARY KEY  (`id`)
    ) ENGINE=InnoDB;
    
    CREATE TABLE `B` (
        `id` int(10) unsigned NOT NULL auto_increment,
        `a_id` int(10) unsigned NOT NULL,
        PRIMARY KEY  (`id`),
        KEY `a_id` (`a_id`),
        CONSTRAINT `b_ibfk_1` FOREIGN KEY (`a_id`) REFERENCES `a` (`id`)
    ) ENGINE=InnoDB;
    

    a_idを削除できます テーブルBの列 次のコマンドを使用します:

    alter table B drop foreign key b_ibfk_1, drop column a_id;
    



    1. 2つのテーブルの値の計算を行い、それを3番目のテーブルmysqlに保存します

    2. SQL更新クエリの集計関数?

    3. UNION ALLは結果セットの順序を保証しますか?

    4. 「選択」は常に主キーで並べ替えられますか?