12/08/2018, 10:08

初めてでもできるSQL (0)概要

システム開発の知識はないけどSQLを学びたい貴方に朗報!初心者でもこれを読めばSQL操作ができるようになる、ということを目指した記事です。 今回は概要になります。個々の細かいコマンドについては次回以降で行います。 以下のサイトで必要なソフトウェアが手に入ります。 http://www.wampserver.com/ ソフトウェアをダウンロード及びインストールします。 ところで、SQLを学ぶのになぜWAMPがいるのか?思うかもしれません。 実際、今回の内容であればMySQLだけあれば十分なのですが、なぜかMySQLそのものよりもWAMPの方がファイルサイズが小さいという現実があ ...

システム開発の知識はないけどSQLを学びたい貴方に朗報!初心者でもこれを読めばSQL操作ができるようになる、ということを目指した記事です。
今回は概要になります。個々の細かいコマンドについては次回以降で行います。

以下のサイトで必要なソフトウェアが手に入ります。 http://www.wampserver.com/

ソフトウェアをダウンロード及びインストールします。
ところで、SQLを学ぶのになぜWAMPがいるのか?思うかもしれません。
実際、今回の内容であればMySQLだけあれば十分なのですが、なぜかMySQLそのものよりもWAMPの方がファイルサイズが小さいという現実があります(3分の1ぐらい)。
回線の速度も潤沢にあるわけではないので時間を有効に使いたいところです。

インストールが終わったら、以下のアドレスを開きます。 http://localhost/phpmyadmin

Database -> Create database -> ( 任意の名前を指定 ) -> Create

画面右下から "mySQL consle" を開きます。

password :(エンター押下)
use (先ほど指定した名前)
  1. create
CREATE TABLE TMEMBER01(
		NID			INT(3),
		CNAME		VARCHAR(30),
		CADDRESS	VARCHAR(40),
		DBIRTHDATE	DATE,
		CNOTICE		VARCHAR(20)
);
  1. drop
drop table tmember01;
  1. select (表示)
SELECT
		*
FROM
		TMEMBER01;
-- This is same as upward
SELECT
		NID, CNAME, CADDRESS, DBIRTHDATE, CNOTICE
FROM
		TMEMBER01;
  1. insert
insert into TMEMBER01(
		NID, CNAME, CADDRESS, DBIRTHDATE, CNOTICE
)
values(
		101, 'Yokota Kaoru', 'Cau Giay', '1978/05/15', 'employee'
);
---
insert into TMEMBER01(
		NID, CNAME, CADDRESS, DBIRTHDATE, CNOTICE
)
values(
		102, 'Suzuki Takashi', 'Trang Thay Tong', '1981/09/01', 'employee'
);
---
insert into TMEMBER01(
		NID, CNAME, CADDRESS, DBIRTHDATE, CNOTICE
)
values(
		103, 'Yamada Norio', 'Kim Ma', '1989/12/03', 'intern'
);
  1. 複製
-- レコードも含める
CREATE TABLE TMEMBER02
SELECT * FROM TMEMBER01;
-- レコードなし、つまりテーブル定義だけ
CREATE TABLE TMEMBER11
SELECT * FROM TMEMBER01
where 1=0;
  1. update
UPDATE
		TMEMBER01
SET
		CADDRESS ='Dao Cat Ba'
where
		NID=103;
  1. delete
DELETE FROM
		TMEMBER01
WHERE
		NID=102;
  1. 全行削除
TRUNCATE TABLE TMEMBER01;

このコマンドは "DELETE FROM TMEMBER01;". と同じですが、deleteよりも速いし、ロールバックに必要なデータを残さないので記憶幾を有効に使えます。

exit

Oracle DatabaseとMySQLでは何かと違いがあることに気づくかと思います。

データ型の違い

Oracle MySQL
number int
varchar2 varchar
date datetime

【注】MySQLにもdate型がありますが、Oracleと違い、本当に日付だけを保持します。 いわゆる"YYYY/MM/DD"データです。"YYYY/MM/DD hh:mm:ss"ではないのでお気を付けください。 MySQLでOracleと同じようにやりたい場合は、"datetime"型を使うと実現できます。

This post is witten by Japanese. If you want to read by English, refer a link bellow.
https://viblo.asia/Kaoru/posts/oaKYMNldv83E

0