SQL入門:MySQLの操作 システム設計演習Ⅰ準備 富樫敦/宮西 2007/12/18 1 SQLとは リレーショナルデータベース言語SQL SQL(エスキューエル) データベースの操作、特に問い合わせを行 うための言語 2007/12/18 2 MySQLとは DBMS(データベースマネジメントシス テム)の1つ. Oracle、Access、PostgreSQL、 MySQLなどが有名. 2007/12/18 3 MySQLのインストール 講義用ページよりMySQLに関するzip ファイルとpptファイルをDL. pptファイルを見ながら,各自インス トールと各種設定を行う.(既に済んで いるはず) 以下の設定に注意. 環境変数,rootのパスワードの設定. 2007/12/18 4 MySQLの操作(演習) 本日は以下の操作について,マスターし ましょう. データベースの作成(create) テーブルの作成 データ操作命令の基本4文法 INSERT,SELECT,UPDATE,DELETE 2007/12/18 5 コマンドラインの起動 「スタート」→「すべてのプログラ ム」→「アクセサリ」→「コマンド プロンプト」 >の後の部分 がキーボード からの入力で す. 2007/12/18 6 ログイン インストール時に設定したパスワードを 使い,rootでログインしましょう. C:\>mysql -u root –p Enter password: 設定したパスワード 2007/12/18 7 ログアウト ログアウトの方法です. mysql> exit; Bye “exit”ではなく,”quit”でも可. 演習を続けるため,再度ログインして下さ い. 2007/12/18 8 データベースの作成 演習で使うためのデータベースを作って おきます. ここでは,“testdb01”にでもしておき ましょう. mysql> create database testdb01; 2007/12/18 9 データベースの確認 作られたデータベースは,以下のコマン ドで確認できます. mysql> show databases; 作ったデータベースが 確認できます. 2007/12/18 +-----------+ | Database | +-----------+ | mysql | | test | | testdb01 | +-----------+ 10 データベースに接続する 先程作成したデータベースを選択します. mysql> use testdb01; Database changed 以上でデータベースが操作できるようにな りました. 2007/12/18 11 テーブルの設計 まずは,テーブルを設計します.(ス キーマ) ここでは,テーブル名は“person”にし 名称 内容 型 備考 ます. id ID int(10) 空欄不可,主キー,自動採 name 名前 char(20) 空欄不可 age 年齢 int(10) height 身長 float weight 体重 float 2007/12/18 12 テーブルを作成する データベースにテーブルを作ります. mysql> create table person( -> id int(10) primary key auto_increment, -> name char(20), -> age int(10), -> height float, -> weight float, -> ); 2007/12/18 13 テーブルの確認 正しくテーブルが作られたか,確認して みましょう. mysql> show fields from person; または mysql> show columns from person; 次スライドのように表示されたでしょうか? 2007/12/18 14 テーブルの確認 +--------+---------+------+-----+---------+------------------+ | Field | Type | Null | Key | Default | Extra | +--------+---------+------+-----+---------+------------------+ | id | int(10) | NO | PRI | NULL | auto_increment | | name | char(20)| YES | | NULL | | | age | int(10) | YES | | NULL | | | height | float | YES | | NULL | | | weight | float | YES | | NULL | | +--------+---------+------+-----+---------+------------------+ 2007/12/18 15 データの作成(INSERT) 作ったテーブルに,表のようにデータを 作成しましょう. id 1 name suzuki ichiro age 30 height weight 178.5 80.5 mysql> INSERT INTO person -> (name,age,height,weight) -> VALUES(‘suzuki ichiro’,30,178.5,80.5); 2007/12/18 16 データの作成(INSERT) id 1 2 3 4 5 同様に,以下の表のようにデータを入力 してみましょう.(SQL文は自分で考 える.) name suzuki ichiro tanaka jiro oota saburo dai jiro dai goro 2007/12/18 age 30 29 28 27 3 height 178.5 180.2 170.4 168.2 100.0 weight 80.5 90.4 70.5 70.2 30.0 17 データを表示する(SELECT) 入力したデータを表示してみます. mysql> SELECT * FROM person; +-----+------------------+------+ | id | name | age |.. +-----+------------------+------+ | 1 | suzuki ichiro | 30 |.. | 2 | tanaka jiro | 29 |.. | : | : | : | 2007/12/18 18 データを検索する① 年齢が29の人の,全てのフィールドを 表示する. mysql> SELECT * FROM person WHERE age=29; (↑1行で入力する.) WHERE以下に条件文をつけて検索します. 2007/12/18 19 データを検索する② LIMITを付けると,表示する件数を限定 できます. mysql> SELECT * FROM person WHERE age=29 LIMIT 1; 2007/12/18 20 データを検索する③ ageが20の人の,heightとweightを表 示する. mysql> SELECT height,weight FROM person WHERE age=20; ageが20の人の人数を表示する. mysql> SELECT count(*) FROM person WHERE age=20; 2007/12/18 21 ちょっと高度な検索 「ageが30」かつ「heightが170以下」の人. mysql> SELECT * FROM person WHERE age=30 && height<=170; 「weightが80以上」または「heightが170以下」の 人. mysql> SELECT * FROM person WHERE weight>=80 || height<=170; 2007/12/18 22 データの更新(UPDATE) mysql> UPDATE person SET age=35 where name=‘suzuki ichiro’; (↑1行で入力する.) name suzuki ichiro age height weight 30 178.5 80.5 SELECT文で 確認してみよう. suzuki ichiro 2007/12/18 35 178.5 80.5 23 データの削除(DELETE) mysql> DELETE person where name=‘suzuki ichiro’; (↑1行で入力する.) SELECT文で 確認してみよう. 2007/12/18 24 例 3.1 準備 データベースtestdb01、テーブルpersonを準備 mysql –u root –p ********(secret) パスワード、パスワードの設定をしていない場合にはEnter キー create database testdb01; use testdb01; create table person(id int(10) primary key auto_increment, name char(20), age int(10), height float, weight float); insert into person(name,age) values(’suzuki ichiro’,28); insert into person(name,age) values(”suzuki jiro”,26); insert into person(name) values(’kimura saburo’); ・・・・・・ ディレクトリ(Linux):/usr/local/apache2/htdocs/phpsample1 フォルダ(WindowsXP):C:\Program Files\Apache Group\Apache2\htdocs\phpsample1 2007/12/18 25 例 3.2 3.3 3.4 3.5 3.6 3.7 2007/12/18 トップ画面 index.php 全件表示 show_persons.php 1件表示 show_one_person.php 1件追加 add_one_person.php 1件修正 mod_one_person.php 1件削除 del_one_person.php 26 まとめ. 以下の内容について理解出来ましたか? MySQLのインストール MySQLの基本操作 データベースの作成(create) テーブルの作成 データ操作命令の基本4文法 INSERT,SELECT,UPDATE,DELETE MySQL, PHPの連携 2007/12/18 27
© Copyright 2024 ExpyDoc