• 検索結果がありません。

~モバイルを知る~ 日常生活とモバイルコンピューティング

N/A
N/A
Protected

Academic year: 2021

シェア "~モバイルを知る~ 日常生活とモバイルコンピューティング"

Copied!
35
0
0

読み込み中.... (全文を見る)

全文

(1)

テーマ研究会(2011/10/04)

~ データベース~

政策情報学部 渡辺恭人

(2)

データベース

• Webアプリケーションに必要なもの

• データベースとは?

– 必要に応じて情報を取り出せるしくみ、たとえば 住所録みたいなもの

• 例、住所録

– 知人や友人の住所が列記されている – 必要に応じて探せる • 例、山田さんの電話番号は? – 大がかりなもの:NTTの電話帳 2

(3)

データベースとは?

• 住所録や電話帳はデータベース?

– 本当の意味ではデータベースではない – なぜなら、コンピュータのデータではないから

• 住所録や電話帳の内容を入力してコンピュー

タのデータにしたら、データベース!

– どこがどうかわるのか? – 紙の住所録でできなかったことができる • 名前以外でも検索できる、名字だけ、名前だけ、住所 、電話番号でも。 3

(4)

データベースにするには?

• コンピュータのデータであること以外にもある

• データの作り方・持ち方に規則が必要

– 登録されるデータの単位が1件単位でばらばらに できること – データのどの部分がどのような意味を持つかが 決まっていること 4

(5)

レコードとフィールド

• レコード

– データは、1件ごとにばらばらにできなければなら ない・この1件をレコードという • 住所録の場合、一人一人の情報がレコード – 100人分のレコードは100レコード

• フィールド

– レコードの構成:氏名・郵便番号・住所・電話・メル アド・身長・・・ • すべてのレコードは同じ欄に区切られなければならな い • この欄をフィールドという 5

(6)

データベースと表計算

• 表計算と同じに見える

– 表計算は、行と列で構成されている – Excelで住所録を作る人もいる • データベースの要素を満たすから同じことができる

• 概念の違いを理解する

– データベース:仕組みの概念を指す • ソフトの種類を限定する言葉ではない – 表計算:ソフトの種類を指す – データベースがデータベースであるためには、そ の要素を満たしていれば、ソフトはなんでもいい 6

(7)

データベースとして便利?

• 表計算

– 市川市に住んでいる人のデータを抜き出す場合 • 住所の列でソートし、条件に合う行を選択し、コピーし て別のワークシートに貼る

• ワープロ

– 行・列の概念がないからもっと不便

• データベースソフトの出現

– データベースを管理するための専用ソフト • Microsoft Accessなど 7

(8)

データベースソフトの役割

• データファイルの取り扱い

– 住所録:住所のデータが格納されているファイル

• 表計算

– 全住所データがワークシートに表示される

• データベースソフト

– レコード単位で表示と入力ができる – 検索や並べ替えのメニューがある – 画面の設計ができる – 定型的な業務を行うためのプログラム言語もある 8

(9)

データベースソフトの現状

• 個人ベースだとあまり流行っていない

– 高い:4~5万円 – 中途半端に難しい – 使い道がない

• 会社の業務だけ

9

(10)

住所録だけじゃないデータベース

• 例、日記

– 日々の記録をつけるのに使う • ファイルでもできるが・・・いろいろ面倒 • 日記ソフトでもできるが・・・いろいろ面倒 – データベースだと管理が楽 – 1日分を1レコード、日付と内容をフィールドとする • 日付は自動 • さまざまな検索が可能 • データを追加できる:カロリー摂取量とか

• 実際Blogはデータベースで作られている

10

(11)

その他:いろいろ

• リスト系のデータ

– 蔵書やCD、コレクションの品々などのデータ

• 家計簿

– 情報を加工し、計算する機能を利用する

• 日々のさまざまなことを記録する何でもデー

タベース

• でも、データベースソフトが高かったら気軽に

使えない

11

(12)

無料で使えるデータベースMySQL

• SQL(Structured Query Language)に対応した

無料データベースシステムを使う

• SQL

– データベースを操作するための言語 • プログラミング言語ではない

• SQLの例(jushorokuというデータベースに1件

の住所情報を登録する場合)

– insert into jushoroku values (‘千葉商科大学’, ‘272’ , ‘8512’ , ‘千葉県市川市国府台’, ‘1-3-1’,

(13)

SQLは面倒か?

• 構文は決まっている

– insert into テーブル名 values データ

• ボタンの指示より言葉のほうが楽

• 実用上は、20種類程度の構文を覚えれば、

ほとんどのやりたいことはできる

(14)

MySQL

• PostgreSQLなどほかにもSQLに対応したオープンソ ースのデータベースシステムはある – オープンソース • プログラムが公開され、誰もがそれを改変したり、再配 布したりが許されているソフト • 開発が一私企業に占有されてない • もちろん無料

• MySQL

– 唯一LinuxでもWindowsでもMacでも使える – 性能も高い 14

(15)

研究室サーバにログインする

• Tera Term Proというソフトウェアを使用する

• 接続先

– www.cyaneum.org (202.244.37.57)

• ログイン情報を入力

– ユーザ名: CUCと同じ(例、b040000) – 初期パスワード • 今日作った人:仮パスワード: hogeの後に、ユーザ名 からaを取ったもの – 例、b040000の人は、hoge040000 15

(16)

Tera Term:ログイン画面

(17)

ログイン後

(18)

パスワード変更

• 仮パスワードを変更します(必須)

• passwdコマンドを使います

18 ① passwdと入力し、 [Enter]キーを押す。 ② 古いパスワードを入 力し、 [Enter]キーを押す。 ※表示されません。 ③ 新しいパスワードを 入力し、 [Enter]キーを押 す。※表示されません。 ④ 新しいパスワードを もう一度入力し、 [Enter] キーを押す。※表示され ません。 変更終了後、exitと入力し、[Enter]キーを押す

(19)

MySQLモニタの起動

• MySQLサーバを操作する • TeraTermで研究室サーバにログイン • コマンドプロンプトで、mysql –u ユーザ名(大学と 同じ) -pと入力 • パスワードを入力( hoge2011 ) – ※仮パスワード • モニタが起動

• show databases; と入力し、[Enter]を押す

19

(20)

設定確認など

• 自分を確認する

– select now(), user(), version();

• 自分のパスワードを変更する

– SET PASSWORD = PASSWORD('パスワード');

• 自分用のデータベースを使用する

– たとえば、ユーザ名がb040000の人は、 – use b040000;と入力し、[Enter]

(21)

21

(リレーショナル)データベース

• データモデルがリレーショナルモデルであるデータベー ス – テーブル同士の関連付け(リレーションシップ) • いくつかのテーブルを一つのテーブルとして扱える • テーブル(表)にデータを格納 – フィールドとレコードで構成 – フィールド:データの項目を表す – レコード:データ1行分 • 主キーの必要性 – 特定のレコードを「識別」する

(22)

22

テーブル

(23)

23

テーブルの構成

氏名 電話番号 住所 小林 ○○ 0552-AA-BBBB 甲府市□□1-7-11 是枝 △△ 0427-CC-DDDD神戸市○○区☆☆4-8-25 後藤 ×× 0975-EE-FFFF 大分市△△1-9-7 列名、またはフィールド名 表 ま た は テ ー ブ ル 列、またはフィールド 行 、 ま た は レ コ ー ド

(24)

24 商品一覧 商品番号 商品名 単価 1 りんご 100 2 みかん 50 3 ぶどう 150 4 バナナ 120 5 メロン 500 売り上げ一覧 商品番号 商品名 単価 売上個数 売上金額 1 りんご 100 10 1000 3 ぶどう 150 20 3000 3 ぶどう 150 25 3750 5 メロン 500 5 2500 5 メロン 500 8 4000 受注明細 受注番号 明細番号 取引先名 商品名 単価 数量 金額 1 1 千葉商店 3 150 12 1800 1 2 千葉商店 4 120 35 4200 2 1 千葉病院 1 100 43 4300 2 2 千葉病院 2 50 20 1000 2 3 千葉病院 5 500 10 5000 3 1 千葉バス 4 120 5 600 テーブル テーブル テーブル データベース データベースの構造:テーブルの集合

(25)

クエリ(query: 問い合わせ)

• 構文(日常的に使用するもの)

25 クエリの種類 意味 CREATE データベースやテーブルを作る ALTER テーブルの構造を修正する INSERT テーブルにデータ(レコード)を追加する SELECT テーブルからレコードを選び出す UPDATE テーブルの内容を修正する DELETE レコードを削除 DROP テーブルやデータベースを削除する

(26)

データの型

• フィールドはあらかじめ定義しておかなけれ

ばならない

– 「どんなデータを入れるのか」 – 文字なのか、数字なのか、数字は何桁なのか…

• データの型・・・データの種類

– MySQLで使用するデータ型 • 文字型、数値型、日付・時刻型・リスト型 26

(27)

データ型

• とりあえず3つだけ使うことにする

• 数値型

– とりあえずINTで – -2147483648~ 2147483648

• 文字型

– CHAR型:最も一般的 • 桁数とセットで使う:CHAR(120) ⇒半角で120文字 – 最大255文字まで – TEXT型:もっと長い文字列:最大65536文字 27

(28)

データベースとテーブルの作成

CREATE

28

C:¥mysql¥bin>mysql -u root -p Enter password: ********

Welcome to the MySQL monitor. Commands end with ; or ¥g. Your MySQL connection id is 1 to server version: 4.0.26-nt

Type 'help;' or '¥h' for help. Type '¥c' to clear the buffer.

mysql> create database lesson;

Query OK, 1 row affected (0.03 sec)

mysql> show databases; +---+ | Database | +---+ | lesson | | mysql | | test | +---+

3 rows in set (0.00 sec)

(29)

データベースを使う

USE

• データベースを使うためには、どのデータベ

ースを使うか必ず指定する必要がある

• 基本構文

– use データベース名;

• MySQLモニタで、

– use ログイン名; – 「Database changed」と表示される 29

(30)

テーブルを作る

• データベースの中にテーブルを作る

– テーブル:Excelではワークシートに相当 – 日本語も使えるが、ここでは混乱させないために 半角英数のみを使う

• 練習用サンプル:都道府県の人口データベー

ス(テーブルの名前:todofuken)

30 フィールド名 データ型 内容 ken char(50) 都道府県名 kencho char(50) 県庁所在地 jinko int 人口 領域はざっくり大きめに確保

(31)

テーブルを作る

• 基本構文

– create table テーブル名 (フィールド名1 その データ型, フィールド名2, そのデータ型, ・・・);

• ここでの例

– テーブル名: todofuken

– フィールド名: ken kencho jinko

• モニタで入力

– create table todofuken ( ken char(50), kencho char(50), jinko int );

(32)

テーブルを確認する

• 実行結果

• テーブルを確認する

– show tables; 32 mysql> use b040000; Database changed

mysql> create table todofuken ( ken char(50), kencho char(50), jinko int); Query OK, 0 rows affected (0.01 sec)

mysql> show tables; +---+ | Tables_in_lesson | +---+ | todofuken | +---+

(33)

フィールドの確認

• 基本構文

– show fields from テーブル名; – テーブル名を必ず指定する

• モニタで入力

– show fields from todofuken;

33

mysql> show fields from todofuken;

+---+---+---+---+---+---+ | Field | Type | Null | Key | Default | Extra | +---+---+---+---+---+---+ | ken | char(50) | YES | | NULL | | | kencho | char(50) | YES | | NULL | | | jinko | int(11) | YES | | NULL | | +---+---+---+---+---+---+ 3 rows in set (0.00 sec)

(34)

課題

• 今週は幕張メッセでCEATEC2010が開催されている(土 曜日まで) • CEATECに関する記事を探し、面白いと思った技術、新 製品、Webサービス、文化についての記事を見つけ、 記事を要約して、感想を述べなさい。 – 記事はいくつでも可 – 実際に見に行くのもよい、いやぜひ行って欲しい – 記事に載るのは、ほんの一部。百聞は一見にしかず。 • Wordなどのワープロでまとめて、メールでriho-m-rg11@cuc.ac.jpに提出 • ファイル名:kadai1004-学籍番号.doc(x) • 締切:10/10 18:00まで 34

(35)

CEATEC2011について

• 日本の最先端技術を発見し体験できるのでぜひ行ってみて ください。研究にも就職にも役立ちます。 • Webでの事前登録で入場無料になります。 • 10月4日~8日(8日は最終日で混みます) 35 http://www.ceatec.com/2011/ja/

参照

関連したドキュメント

方法 理論的妥当性および先行研究の結果に基づいて,日常生活動作を構成する7動作領域より

不変量 意味論 何らかの構造を保存する関手を与えること..

しかし私の理解と違うのは、寿岳章子が京都の「よろこび」を残さず読者に見せてくれる

注)○のあるものを使用すること。

 県民のリサイクルに対する意識の高揚や活動の定着化を図ることを目的に、「環境を守り、資源を

脅威検出 悪意のある操作や不正な動作を継続的にモニタリングす る脅威検出サービスを導入しています。アカウント侵害の

何人も、その日常生活に伴う揮発性有機 化合物の大気中への排出又は飛散を抑制

何人も、その日常生活に伴う揮発性有機 化合物の大気中への排出又は飛散を抑制