| サンプル集 |
|
■VC ■C# ■Java ■BorlandC ■LinuxC ■MS-DOS ■bash ■Excel VBA ■VBScript ■PHP ■HTML ■perl ■iPhone ■Android ■Lua ■WordPress ■PowerShell ■Python ■Flutter ■Rust ■Node.js ■other |
| Linuxコマンド |
| 用語集 |
| debian メモ |
| apache2 メモ |
| MySQL メモ |
| Oracle メモ |
| PostgreSQL |
| HOME |
mysqlクレートを使ってMySQLでテーブル作成、データ追加、検索をしてみます。
◆環境| OS | Windows 10 Home 22H2 64bit |
|---|---|
| rustc | 1.86.0 |
| cargo | 1.86.0 |
Cargo.tomlファイルに依存関係を追記します。
| Cargo.toml | ||
|
MySQLへ接続しテーブルを作成しデータを追加し検索するようにします。
| main.rs | ||
|
cargo runで実行したところ正常に動作したようです。
> cargo run
Compiling ymwrust011 v0.1.0 (C:\rust-workspace\ymwrust011)
Finished `dev` profile [unoptimized + debuginfo] target(s) in 0.8
9s
Running `target\debug\ymwrust011.exe`
Hello, world!
rec_values: ["12.3"]
Compiling ymwrust011 v0.1.0 (C:\rust-workspace\ymwrust011)
Finished `dev` profile [unoptimized + debuginfo] target(s) in 0.8
9sRunning `target\debug\ymwrust011.exe`
Hello, world!
rec_values: ["12.3"]
MySQLへ接続し状況を確認したところテーブルが作成されていました。
mysql> show tables;
+----------------+
| Tables_in_MyDB |
+----------------+
| rec_values |
+----------------+
1 row in set (0.00 sec)
+----------------+
| Tables_in_MyDB |
+----------------+
| rec_values |
+----------------+
1 row in set (0.00 sec)
テーブルの構成を確認したところ期待通りの構成になっていました。
mysql> desc rec_values;
+-----------+--------------+------+-----+-------------------+--------
---------------------------------------+
| Field | Type | Null | Key | Default | Extra
|
+-----------+--------------+------+-----+-------------------+--------
---------------------------------------+
| id | int | NO | PRI | NULL | auto_in
crement |
| rec_date | datetime | NO | | CURRENT_TIMESTAMP | DEFAULT
_GENERATED on update CURRENT_TIMESTAMP |
| rec_value | decimal(3,1) | YES | | NULL |
|
+-----------+--------------+------+-----+-------------------+--------
---------------------------------------+
3 rows in set (0.02 sec)
+-----------+--------------+------+-----+-------------------+--------
---------------------------------------+| Field | Type | Null | Key | Default | Extra
|+-----------+--------------+------+-----+-------------------+--------
---------------------------------------+| id | int | NO | PRI | NULL | auto_in
crement || rec_date | datetime | NO | | CURRENT_TIMESTAMP | DEFAULT
_GENERATED on update CURRENT_TIMESTAMP || rec_value | decimal(3,1) | YES | | NULL |
|+-----------+--------------+------+-----+-------------------+--------
---------------------------------------+3 rows in set (0.02 sec)
レコードを確認したところ期待通りのデータが追加されていました。
mysql> select * from rec_values;
+----+---------------------+-----------+
| id | rec_date | rec_value |
+----+---------------------+-----------+
| 1 | 2025-09-14 10:28:12 | 12.3 |
+----+---------------------+-----------+
1 rows in set (0.00 sec)
+----+---------------------+-----------+
| id | rec_date | rec_value |
+----+---------------------+-----------+
| 1 | 2025-09-14 10:28:12 | 12.3 |
+----+---------------------+-----------+
1 rows in set (0.00 sec)
もう一度実行してみたところ正常に終わり取得結果も2件表示されました。
> cargo run
Finished `dev` profile [unoptimized + debuginfo] target(s) in 0.1
5s
Running `target\debug\ymwrust011.exe`
Hello, world!
rec_values: ["12.3", "12.3"]
Finished `dev` profile [unoptimized + debuginfo] target(s) in 0.1
5sRunning `target\debug\ymwrust011.exe`
Hello, world!
rec_values: ["12.3", "12.3"]
DBを確認したところデータも2件になっていました。
mysql> select * from rec_values;
+----+---------------------+-----------+
| id | rec_date | rec_value |
+----+---------------------+-----------+
| 1 | 2025-09-14 10:28:12 | 12.3 |
| 2 | 2025-09-14 10:28:15 | 12.3 |
+----+---------------------+-----------+
2 rows in set (0.00 sec)
+----+---------------------+-----------+
| id | rec_date | rec_value |
+----+---------------------+-----------+
| 1 | 2025-09-14 10:28:12 | 12.3 |
| 2 | 2025-09-14 10:28:15 | 12.3 |
+----+---------------------+-----------+
2 rows in set (0.00 sec)
期待通りに動作しました!
Copyright (C) 2025 ymlib.com
