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

TTL(Time to live)オプションの対象となるMySQLデータベースにレコードを作成するにはどうすればよいですか?


MySQLイベントスケジューラを使用する必要があります。イベントの実行とスケジューリングを管理します。

まず、テーブルを作成する必要があります。その後、毎日スケジュールするイベントを作成できます。

テーブルを作成しましょう。テーブルを作成するためのクエリは次のとおりです-

mysql> create table EventDemo
   -> (
   -> Id int NOT NULL AUTO_INCREMENT PRIMARY KEY,
   -> EventDateTime datetime
   -> );
Query OK, 0 rows affected (0.71 sec)

これで、insertコマンドを使用してテーブルにいくつかのレコードを挿入できます。クエリは次のとおりです-

mysql> insert into EventDemo(EventDateTime) values('2010-09-21');
Query OK, 1 row affected (0.19 sec)
mysql> insert into EventDemo(EventDateTime) values('2016-10-27');
Query OK, 1 row affected (0.20 sec)
mysql> insert into EventDemo(EventDateTime) values('2018-12-09');
Query OK, 1 row affected (0.10 sec)
mysql> insert into EventDemo(EventDateTime) values('2019-03-12');
Query OK, 1 row affected (0.17 sec)
mysql> insert into EventDemo(EventDateTime) values('2019-01-04');
Query OK, 1 row affected (0.15 sec)

selectステートメントを使用して、テーブルのすべてのレコードを表示します。クエリは次のとおりです-

mysql> select *from EventDemo

以下は出力です-

+----+---------------------+
| Id | EventDateTime       |
+----+---------------------+
|  1 | 2010-09-21 00:00:00 |
|  2 | 2016-10-27 00:00:00 |
|  3 | 2018-12-09 00:00:00 |
|  4 | 2019-03-12 00:00:00 |
|  5 | 2019-01-04 00:00:00 |
+----+---------------------+
5 rows in set (0.00 sec)
>

TTL(Time To Live)の対象となるクエリは次のとおりです-

mysql> delimiter //
mysql> CREATE EVENT
   -> DeleteDemo
   -> ON SCHEDULE EVERY 1 DAY
   -> DO
   -> BEGIN
   -> DELETE FROM
   -> EventDemo  
   -> WHERE EventDateTime < NOW();
   -> END //
Query OK, 0 rows affected (0.31 sec)

  1. MySQLのコマンドラインでデータベースを作成するにはどうすればよいですか?

    まず、コマンドプロンプトを開く必要があります。ショートカットウィンドウ+Rキーを使用して開くことができます。 スクリーンショットは次のとおりです- ここでCMDと入力し、[OK]ボタンを押します- これで、次のコマンドプロンプトが表示されます- 次に、MySQLbinディレクトリにアクセスします。スクリーンショットは次のとおりです- 以下は、データベースを作成するためにコマンドラインでMySQLを実行するためのクエリです- これで、SHOWDATABASESコマンドを使用してデータベースが作成されているかどうかを確認できます- mysql> SH

  2. MySQLシーケンスを作成する方法は?

    MySQLのシーケンスとは何ですか? MySQLでは、シーケンスとは、指定されている場合は1または0から昇順で生成される整数のリストを指します。多くのアプリケーションでは、特に識別のために一意の番号を生成するために使用されるシーケンスが必要です。 例 例としては、CRMの顧客ID、HRの従業員番号、サービス管理システムの機器番号などがあります。 MySQLでシーケンスを自動的に作成するには、列のAUTO_INCREMENT属性を設定する必要があります。これは通常、主キー列になります。 ルール AUTO_INCREMENT属性を使用するときは、次のルールに従う必要があります- すべての