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

SQLで列を削除する方法は?

    SQLで列を削除する方法

    はじめに

    • 作成済みのテーブルから列を削除するには、 ALTERを使用する必要があります DROP COLUMNと一緒にコマンド 条項。

    構文:

    ALTER TABLE tablename DROP COLUMN ColumnName;

    場所

    1. Tablenameは、列を削除する必要がある既存のテーブルの名前です。
    2. ColumnNameは、既存のテーブルから削除される列の名前です。

    例1:

    まず、「 studentdb」という名前のデータベースを作成します。 」。次に、そのデータベースにテーブル「student」を作成し、テーブルにレコードを挿入します。

    次に、既存のテーブルから「City」列を削除します。

     mysql> USE studentdb;
     Database changed
     mysql> SELECT *FROM student;
     +---------+-----------+-----------+-------------+------+
     | Stud_ID | Stud_Name | Course_ID | Course_Name | City |
     +---------+-----------+-----------+-------------+------+
     |       1 | Prajakta  |       101 | DBMS        | NULL |
     |       2 | Shweta    |       102 | CN          | NULL |
     |       3 | Nikita    |       103 | OS          | NULL |
     |       4 | Ankita    |       104 | C           | NULL |
     |       5 | Ashmita   |       105 | JAVA        | NULL |
     +---------+-----------+-----------+-------------+------+
     5 rows in set (0.00 sec)
     mysql> ALTER TABLE student DROP COLUMN City;
     Query OK, 5 rows affected (0.29 sec)
     Records: 5  Duplicates: 0  Warnings: 0
     mysql> SELECT *FROM student;
     +---------+-----------+-----------+-------------+
     | Stud_ID | Stud_Name | Course_ID | Course_Name |
     +---------+-----------+-----------+-------------+
     |       1 | Prajakta  |       101 | DBMS        |
     |       2 | Shweta    |       102 | CN          |
     |       3 | Nikita    |       103 | OS          |
     |       4 | Ankita    |       104 | C           |
     |       5 | Ashmita   |       105 | JAVA        |
     +---------+-----------+-----------+-------------+
     5 rows in set (0.00 sec) 

    列「City」は既存の学生テーブルから削除されます。

    例2:

    列「Stud_ID」とその主キーを削除します。

     mysql> DESC student;
     +-------------+-------------+------+-----+---------+-------+
     | Field       | Type        | Null | Key | Default | Extra |
     +-------------+-------------+------+-----+---------+-------+
     | Stud_ID     | int(11)     | NO   | PRI | NULL    |       |
     | Stud_Name   | varchar(20) | YES  |     | NULL    |       |
     | Course_ID   | int(11)     | YES  |     | NULL    |       |
     | Course_Name | varchar(20) | YES  |     | NULL    |       |
     +-------------+-------------+------+-----+---------+-------+
     4 rows in set (0.02 sec)
     mysql> ALTER TABLE student DROP COLUMN Stud_ID;
     Query OK, 5 rows affected (0.28 sec)
     Records: 5  Duplicates: 0  Warnings: 0
     mysql> DESC student;
     +-------------+-------------+------+-----+---------+-------+
     | Field       | Type        | Null | Key | Default | Extra |
     +-------------+-------------+------+-----+---------+-------+
     | Stud_Name   | varchar(20) | YES  |     | NULL    |       |
     | Course_ID   | int(11)     | YES  |     | NULL    |       |
     | Course_Name | varchar(20) | YES  |     | NULL    |       |
     +-------------+-------------+------+-----+---------+-------+
     3 rows in set (0.01 sec) 

    DESCを使用しました SQLでコマンドを実行して、学生テーブルの構造を表示します。 ALTERコマンドを実行する前に、「Stud_ID」に主キーがあります。 DROP列句とともにALTERコマンドを実行すると、「Stud_ID」が主キーとともにテーブル構造から削除されます。


    1. 月ごとの製品売上を比較するSQLクエリ

    2. 新しいMacProを正当化する

    3. ClusterControlCLIからPostgreSQLデータベースを管理する方法

    4. ストアドプロシージャを実行する場合、CommandType.Textを使用するのと比較してCommandType.StoredProcedureを使用する利点は何ですか?