MySQL では、MySQL フィールドをデフォルト値にリセットする方法が 2 つあります。 1 つはデフォルトのキーワードで、もう 1 つはdefault() 関数です。
ケース 1: デフォルトのキーワードを使用します。構文は次のとおりです。
UPDATE yourTableName SET yourColumnName=default where yourCondition;
ケース 2:default() 関数を使用します。構文は次のとおりです。
UPDATE yourTableName SET yourColumnName=default(yourColumnName) where yourCondition;
上記の構文を理解するために、テーブルを作成してみましょう。テーブルを作成するクエリは次のとおりです。
mysql> create table Default_Demo -> ( -> Id int NOT NULL AUTO_INCREMENT, -> Name varchar(20), -> Age int, -> Salary float, -> PRIMARY KEY(Id) -> ); Query OK, 0 rows affected (0.73 sec)
insert コマンドを使用して、いくつかのレコードをテーブルに挿入します。クエリは次のとおりです。
mysql> insert into Default_Demo(Name,Age,Salary) values('John',23,405.56); Query OK, 1 row affected (0.18 sec) mysql> insert into Default_Demo(Name,Age,Salary) values('Carol',25,1000.98); Query OK, 1 row affected (0.22 sec) mysql> insert into Default_Demo(Name,Age,Salary) values('Larry',21,987.24); Query OK, 1 row affected (0.09 sec) mysql> insert into Default_Demo(Name,Age,Salary) values('Sam',24,986.10); Query OK, 1 row affected (0.17 sec) mysql> insert into Default_Demo(Name,Age,Salary) values('Mike',22,10000.50); Query OK, 1 row affected (0.17 sec) mysql> insert into Default_Demo(Name,Age,Salary) values('David',26,100.45); Query OK, 1 row affected (0.20 sec)
select ステートメントを使用して、テーブル内のすべてのレコードを表示します。クエリは次のとおりです:
mysql> select *from Default_Demo;
出力は次のとおりです:
+----+-------+------+---------+ | Id | Name | Age | Salary | +----+-------+------+---------+ | 1 | John | 23 | 405.56 | | 2 | Carol | 25 | 1000.98 | | 3 | Larry | 21 | 987.24 | | 4 | Sam | 24 | 986.1 | | 5 | Mike | 22 | 10000.5 | | 6 | David | 26 | 100.45 | +----+-------+------+---------+ 6 rows in set (0.00 sec)
これは、MySQL フィールドをデフォルト値にリセットするクエリです。
ケース 1: デフォルトのキーワードを使用します。クエリは次のとおりです:
mysql> update Default_Demo set Age=Default where Id=6; Query OK, 1 row affected (0.10 sec) Rows matched: 1 Changed: 1 Warnings: 0
これで、テーブルのレコードを表示できます。Age 列は NULL で、ID は 6 です。クエリは次のとおりです:
mysql> select *from Default_Demo;
出力は次のとおりです。 :
+----+-------+------+---------+ | Id | Name | Age | Salary | +----+-------+------+---------+ | 1 | John | 23 | 405.56 | | 2 | Carol | 25 | 1000.98 | | 3 | Larry | 21 | 987.24 | | 4 | Sam | 24 | 986.1 | | 5 | Mike | 22 | 10000.5 | | 6 | David | NULL | 100.45 | +----+-------+------+---------+ 6 rows in set (0.00 sec)
ビュー ID 6、[年齢] 列がデフォルト値 NULL に更新されました。
ケース 2: これで、default() 関数も使用できるようになりました。ここでは、Salary 列がデフォルト値 (ID が 6) に更新されます。クエリは次のとおりです。
mysql> update Default_Demo set Salary=Default(Salary) where Id=6; Query OK, 1 row affected (0.21 sec) Rows matched: 1 Changed: 1 Warnings: 0
次に、ID 6 のテーブル レコードを確認します。
mysql> select *from Default_Demo where Id=6;
出力は次のとおりです:
+----+-------+------+--------+ | Id | Name | Age | Salary | +----+-------+------+--------+ | 6 | David | NULL | NULL | +----+-------+------+--------+ 1 row in set (0.00 sec)
給与列のデフォルト値 NULL が表示され、更新は成功しました。
以上がMySQL フィールドをデフォルト値にリセットしますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。