Download PowerPoint プレゼンテーション

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project

Document related concepts
no text concepts found
Transcript
My SQLと話そう!(実習
編)
さて実習です
Powered
BY
データーベースと
お話しをしましょう
My SQLというデータベースを皆さんの
ラップトップにインストールしましょう
My SQLとお話をしながら、必要な知識
を学びましょう
ダウンロード&インストール
なにはともあれ、ダウンロードとインス
トールをしましょう
研究会ホームページに用意してあります
→講義資料
→My SQLダウンロード
(mysql-max-3.23.51-win)
解凍してください
インストール開始!
インストールを開始するには、Setup.exe
をクリックしましょう
出てくるNextボタンを連打しましょう
設定は全てデフォルトにしましょう
ファイルはCドライブの直下
(C:\mysql)にインストールされます
path変数にC:\mysql\binを追加します
これでMy SQLの
準備が整いました
最初にMy SQL(サーバー)の起動の仕方
を覚えましょう
サーバーの起動
まずは…こんな状態に
My SQL DBMS
My SQL
Database
サーバーの起動コマンド
DOSプロンプトから
mysqld-max --standalone(win95&98)
mysqld-max-nt --standalone(win 2000&xp)
サーバーを停止するには
mysqladmin –u root shutdown
※以上2つはバッチファイルを作っておく
と便利ですね。
クライアントの利用
My SQL
クライアント
My SQL DBMS
My SQL
Database
クライアントをつかって
話しかける
クライアントから話しかけてお返事を表示す
るには、
(DOSプロンプトより)
mysql (リターン)
>「話しかける内容」
(クライアントの停止はquit)
と打ちます。では話しかける内容は
どう書けばよいのでしょう?
話しかけるための言葉
データベースに話しかけるにはSQLとい
う言葉を使います。
SQLとはなんぞや
Structured Query Languageの略
Queryは“問い合わせ”の意味
RDBからデータを
出し入れする為の共通語
共通語?
各データベースはSQLを共
通のインターフェースとして
用意しています
話し手
SQL
SQL
SQL
SQL
Postgre
DBMS
My SQL
DBMS
Oracle
DBMS
DB2
DBMS
Postgre
My SQL
Oracle
DB2
今日話しかけて作りたいもの
友達の電話番号データベース
myfriends←databaseですね
phonedata←tableといいます
id
name
phone
1
杉浦 学
090-????-????
2
山下純一
090-????-????
3
北川敦規
090-????-????
データベースを作ります
mysql>create database myfriends;
Query OK, 1 row affected (0.06 sec)
myfriends
まだ空ですね
できたか確認しましょう
mysql> show databases ;
+-------------+
mysql
|Database |
+-------------+
|myfriends |
myfiends mysql
|mysql
|
|test
|
+-------------+
3 rows in set (0.00 sec)
test
ちなみに削除は…
mysql> drop database 削除するDB;
Query OK, 0 rows affected (0.06 sec)
データベースを選択します
mysql> use myfriends
database changed
テーブルをつくりましょう
属性(フィールド)といいます
レコードといいます
phonedata
id
name
phone
行(row)
1
杉浦 学
090-????-????
行(row)
2
…
…
列(column)
列(column)
書式:create文
create table テーブル名
(フィールド名1 データの型1
フィールド名2 データの型2
……続く
);
※フィールド名に日本語は使えません
データの型?
データ型(+データ型のオプション)を
定義します
データ型
int
32bitの符号付き整数
date
日付 (yyyy-mm-dd)
time
時間 (hh:mm:ss)
text
可変長のテキスト64Kまで
blob
可変長のテキスト64Kまで(大・小文字を区別)
データ型のオプション
詳しくは次週
ということは、、、
create table phonedata(
id int ,
name text,
phone text ,
);
削除は?
mysql> drop table 削除するテーブル名;
Query OK, 0 rows affected (0.00 sec)
データをいれましょう
データの列方向の組を指してレコードと
いいます。
データーを入れるフィールド名を指定し
て使います。(他にフィールドがあった
らnullになります)
データが数値以外なら‘’(シングルクォー
ト)で囲みましょう。
書式:insert文
insert into テーブル名(フィールド名1,
フィールド名2…)
values(データ1,データ2…);
※フィールド名は作成したフィールドと
同じ順番でレコードを入れる場合には省
略できます。
実際は
mysql>insert into phonedata
values(1,’杉浦 学’,‘090-????-????’);
Query OK, 1 row affected (0.06 sec)
この調子で3人分位
(友達が多い人はもっとでも良いです…)
入れてしまいましょう。
データを検索して取得したい
select文を使います。
select * from テーブル名;
指定したテーブル全てのフィールドを取得
します
フィールドを指定するには*だった部分
にフィールド名を入れます
select name from phonedata;
これで、全てのnameフィールドの値を取
得できます
データを検索して取得したい
2
where文をselect文に付け加えると、「フィー
ルド名=データ」を指定して検索ができます。
Select phone from phonedata where name=‘杉浦
学’ ;
+---------------------+
| phone
|
+---------------------+
| 090-????-???? |
+---------------------+
1 row in set (0.11 sec)
データの削除
Delete文を使います
Delete from テーブル名 where文;
Delete from phonedata where name=‘杉浦
学’;
※where文を書かないと全てのレコードが
削除されていまいます
データの変更
update文を使います
upadate テーブル名
set フィールド名1=変更するデータ1
…
where文;
updata phonedata
set phone =‘ 090-1234-5678’
where id=2;
基本はマスターできました
他にも色々なSQL文があるので、自分で
勉強してみるのも良いでしょう。
「これをこうしたいけど、どうしたら良
いんだ?」って言う時が学び時です。
来週は…
来週は今まで使ってきたmysqlクライア
ントを自分でJAVAを使って(JDBCを使っ
て)書いちゃう予定です。
(まじっ?そんなこともできちゃいます)
来週もがんばっていきまっしょい!
今日はこれでおしまいです。
お疲れ様でした。