morimotoyuuki111 / blog

0 stars 0 forks source link

MySQLにsql文を直接書くやり方について #10

Open morimotoyuuki111 opened 2 years ago

morimotoyuuki111 commented 2 years ago

現状の認識としてMy SQLにSQL文を書くのは一般ユーザでログインし直してテーブルを作成した後にSQL文を書いていくといった認識でよろしいのでしょうか? 下記にMySQLにSQLを直接書くやり方を今学習している教材を参考にしてまとめてみました。

データの挿入ができてるか確認するコマンド

SELECT * FROM テーブル名;
totsumaru commented 2 years ago

現状の認識としてMy SQLにSQL文を書くのは一般ユーザでログインし直してテーブルを作成した後にSQL文を書いていくといった認識でよろしいのでしょうか?

すでにテーブルができていれば作成する必要はなく、テーブルがない場合のみ作成する必要があります。

また、

mysql -u root -p

は rootユーザーでログインしているので、ここのrootを自分が作成したユーザー名(一般ユーザー名)にすれば、最初から指定したユーザーでログインできます。

morimotoyuuki111 commented 2 years ago

お疲れ様です。 一般ユーザでログインしてsql文を直接書いてみたのですが合ってますか?
試したこと

alter table articles
    ->   add column body mediumtext NOT NULL,
    ->   add column created datetime,
    ->   add column updated datetime;

結果

Query OK, 0 rows affected (0.13 sec)
Records: 0  Duplicates: 0  Warnings: 0

次に試したこと

update articles set created = CURRENT_TIMESTAMP where created is null;

結果

Query OK, 7 rows affected (0.00 sec)
Rows matched: 7  Changed: 7  Warnings: 0

次に試したこと

update articles set updated = CURRENT_TIMESTAMP where updated is null;

結果

Query OK, 7 rows affected (0.01 sec)
Rows matched: 7  Changed: 7  Warnings: 0

次に試したこと

alter table articles
    ->   drop column body,
    ->   drop column created,
    ->   drop column updated;

結果

Query OK, 0 rows affected (0.11 sec)
Records: 0  Duplicates: 0  Warnings: 0

最後にデータの挿入ができているか確認

SELECT * FROM articles;

下記のようになりました。

+----+----------------+
| id | title          |
+----+----------------+
|  1 | タイトル 1     |
|  2 | タイトル 2     |
|  3 | タイトル 3     |
|  4 | タイトル 4     |
|  5 | タイトル 5     |
|  6 | タイトル 6     |
|  7 | タイトル 7     |
+----+----------------+
7 rows in set (0.00 sec)
totsumaru commented 2 years ago

素晴らしいです! 内容は実際にwebアプリから繋いでみて検証すればOKです。(今正解かどうかは判断できないので) エラーが出てないので次に進みましょう!

morimotoyuuki111 commented 2 years ago

ありがとうございます。 一旦次に進みます。