MySQL
 Computer >> コンピューター >  >> プログラミング >> MySQL

既存のMySQLテーブルのフィールドにFOREIGNKEY制約を追加するにはどうすればよいですか?


ALTER TABLEステートメントを使用して、既存のMySQLテーブルの列にFOREIGNKEY制約を追加できます。

構文

ALTER TABLE table_name ADD FOREIGN KEY(colum_name)REFERENCES table has Primary Key(column_name);

主キーとして列「Cust_Id」を持つテーブル「Customer」を参照するテーブル「Orders1」にFOREIGNKEY制約を追加するとします。次のクエリを使用して実行できます-

mysql> Alter table orders1 add FOREIGN KEY(Cust_id) REFERENCES Customer(Cust_id);
Query OK, 0 rows affected (0.21 sec)
Records: 0  Duplicates: 0  Warnings: 0  

mysql> Describe ORDERS1;
+--------------+-------------+------+-----+---------+-------+
| Field        | Type        | Null | Key | Default | Extra |
+--------------+-------------+------+-----+---------+-------+
| order_id     | int(11)     | NO   | PRI | NULL    |       |
| Product_name | varchar(25) | YES  |     | NULL    |       |
| orderdate    | date        | YES  |     | NULL    |       |
| Cust_id      | int(11)     | YES  | MUL | NULL    |       |
+--------------+-------------+------+-----+---------+-------+
4 rows in set (0.05 sec)

  1. 現在の日付を既存のMySQLテーブルに追加するにはどうすればよいですか?

    既存のテーブルを更新するには、UPDATEを使用します。それで、現在の日付を設定するには、CURDATE()メソッドを使用します- update yourTableName set yourCoumnName=CURDATE();を更新します まずテーブルを作成しましょう- mysql> create table DemoTable -> ( -> DueDate datetime -> ); Query OK, 0 rows affected (0.58 sec) 挿入コマンド-を使用して、テーブルにいくつかのレコードを挿入します mysql> insert

  2. MySQL DBで外部キーを識別する方法は?

    最初にテーブルを作成しましょう- mysql> create table DemoTable1 (Id int NOT NULL PRIMARY KEY,EmployeeName varchar(100)); Query OK, 0 rows affected (0.50 sec) 以下は、外部キー制約を持つ2番目のテーブルを作成するためのクエリです- mysql> create table DemoTable2    (       Id int NOT NULL,       StreetName