Submit Search
データベース技術 7(Database 7)
0 likes
335 views
Yuka Obu
Lecture at Chuo Univ.
Education
Read more
1 of 29
Download now
Download to read offline
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
More Related Content
PDF
達人に学ぶSQL徹底指南書 第2版勉強会 #0
YoshitomoYasuno
PDF
今さら聞けない!Active Directoryドメインサービス入門
Trainocate Japan, Ltd.
PPT
Śniadanie Daje Moc
brandsupportpl
PPT
Śniadanie Daje Moc
brandsupportpl
PPT
Śniadanie Daje Moc
brandsupportpl
PPT
Śniadanie Daje Moc
brandsupportpl
PPT
Śniadanie Daje Moc
brandsupportpl
PPT
Цифровой киоск выпусков газет ИД "КП" для планшетных устройств: первый шаг на...
Консалт-Центр
達人に学ぶSQL徹底指南書 第2版勉強会 #0
YoshitomoYasuno
今さら聞けない!Active Directoryドメインサービス入門
Trainocate Japan, Ltd.
Śniadanie Daje Moc
brandsupportpl
Śniadanie Daje Moc
brandsupportpl
Śniadanie Daje Moc
brandsupportpl
Śniadanie Daje Moc
brandsupportpl
Śniadanie Daje Moc
brandsupportpl
Цифровой киоск выпусков газет ИД "КП" для планшетных устройств: первый шаг на...
Консалт-Центр
Viewers also liked
(12)
PPT
Presentation
lysafontaine
PPT
Śniadanie Daje Moc
brandsupportpl
PDF
Proverbios
Luz Milagro
PPT
Śniadanie Daje Moc
brandsupportpl
PPT
Śniadanie Daje Moc
brandsupportpl
PDF
Raçadores para corte 2009 Tabapua
Nova India Genetica
PPT
Śniadanie Daje Moc
brandsupportpl
PDF
[2012 체인지온] 농사가 진화한다 박호진
daumfoundation
PPT
Śniadanie Daje Moc
brandsupportpl
PPT
Śniadanie Daje Moc
brandsupportpl
PPTX
diapositivas de ontologia-Narenn alvarado
narennalvarado
PPT
Hobbim az olvasás
matraiorsi
Presentation
lysafontaine
Śniadanie Daje Moc
brandsupportpl
Proverbios
Luz Milagro
Śniadanie Daje Moc
brandsupportpl
Śniadanie Daje Moc
brandsupportpl
Raçadores para corte 2009 Tabapua
Nova India Genetica
Śniadanie Daje Moc
brandsupportpl
[2012 체인지온] 농사가 진화한다 박호진
daumfoundation
Śniadanie Daje Moc
brandsupportpl
Śniadanie Daje Moc
brandsupportpl
diapositivas de ontologia-Narenn alvarado
narennalvarado
Hobbim az olvasás
matraiorsi
Ad
Similar to データベース技術 7(Database 7)
(20)
PDF
データベース技術 11(Database 11)
Yuka Obu
PDF
データベース技術 10(Database 10)
Yuka Obu
PDF
データベース技術 8(Database_8)
Yuka Obu
PDF
データベース技術 14(Database 14)
Yuka Obu
PDF
データベース技術 1(Database_1)
Yuka Obu
PPTX
千葉大学情報検索演習2018 データベースとは何か(事前学習教材)
Kosetsu IKEDA
PDF
リレーショナルデータベースとの上手な付き合い方 long version
Mikiya Okuno
PDF
データベース技術 3(Database_3)
Yuka Obu
PDF
データベース01 - データベースとは
Kenta Oku
PDF
データベース技術 2(Database_2)
Yuka Obu
PDF
FMDBの利用方法
uske7i
PDF
データベース03 - SQL(CREATE, INSERT, DELETE, UPDATEなど)
Kenta Oku
PDF
データベース入門1
tadaaki hayashi
PDF
20200629 データベース基礎~データベースの扱いとデータ設計~
Hikaru Tanaka
PPTX
Webアプリケーション入門(3)
Takashi Asanuma
PPT
今年こそ始めたい!SQL超入門 セミナー資料 2024年5月22日 富士通クラウドミートアップ
Toru Miyahara
PDF
データベースシステム論01 - ガイダンス
Shohei Yokoyama
PDF
Cocoa勉強会#6-SQLiteをCocoaで使う
Masayuki Nii
PPTX
2024年度_サイバーエージェント_新卒研修「データベースの歴史」.pptx
yassun7010
PPT
今年こそ始めたい!SQL超入門 MIRACLE Linux Meetup版 0620
Toru Miyahara
データベース技術 11(Database 11)
Yuka Obu
データベース技術 10(Database 10)
Yuka Obu
データベース技術 8(Database_8)
Yuka Obu
データベース技術 14(Database 14)
Yuka Obu
データベース技術 1(Database_1)
Yuka Obu
千葉大学情報検索演習2018 データベースとは何か(事前学習教材)
Kosetsu IKEDA
リレーショナルデータベースとの上手な付き合い方 long version
Mikiya Okuno
データベース技術 3(Database_3)
Yuka Obu
データベース01 - データベースとは
Kenta Oku
データベース技術 2(Database_2)
Yuka Obu
FMDBの利用方法
uske7i
データベース03 - SQL(CREATE, INSERT, DELETE, UPDATEなど)
Kenta Oku
データベース入門1
tadaaki hayashi
20200629 データベース基礎~データベースの扱いとデータ設計~
Hikaru Tanaka
Webアプリケーション入門(3)
Takashi Asanuma
今年こそ始めたい!SQL超入門 セミナー資料 2024年5月22日 富士通クラウドミートアップ
Toru Miyahara
データベースシステム論01 - ガイダンス
Shohei Yokoyama
Cocoa勉強会#6-SQLiteをCocoaで使う
Masayuki Nii
2024年度_サイバーエージェント_新卒研修「データベースの歴史」.pptx
yassun7010
今年こそ始めたい!SQL超入門 MIRACLE Linux Meetup版 0620
Toru Miyahara
Ad
More from Yuka Obu
(12)
PDF
データベース技術 13(Database 13)
Yuka Obu
PDF
データベース技術 12(Database 12)
Yuka Obu
PDF
データベース技術 9(Database 9)
Yuka Obu
PDF
データベース技術 6(Database_6)
Yuka Obu
PDF
データベース技術 5(Database_5)
Yuka Obu
PDF
データベース技術 4(Database_4)
Yuka Obu
PDF
ソーシャルメディアワークショップ1
Yuka Obu
PDF
企業によるソーシャルアカウント運用のために
Yuka Obu
PDF
Sns 2
Yuka Obu
PDF
Twitter in Hitachiohta 3
Yuka Obu
PDF
Twitter in Hitachiohta 2
Yuka Obu
PDF
Twitter in Hitachiohta 1
Yuka Obu
データベース技術 13(Database 13)
Yuka Obu
データベース技術 12(Database 12)
Yuka Obu
データベース技術 9(Database 9)
Yuka Obu
データベース技術 6(Database_6)
Yuka Obu
データベース技術 5(Database_5)
Yuka Obu
データベース技術 4(Database_4)
Yuka Obu
ソーシャルメディアワークショップ1
Yuka Obu
企業によるソーシャルアカウント運用のために
Yuka Obu
Sns 2
Yuka Obu
Twitter in Hitachiohta 3
Yuka Obu
Twitter in Hitachiohta 2
Yuka Obu
Twitter in Hitachiohta 1
Yuka Obu
Recently uploaded
(10)
PDF
6_「老いることは不幸なこと?」植草学園大学附属高等学校森 珠貴さんinspirehigh.pdf
ssuser3fcec0
PDF
9_前田音葉さん:「Yakushima Islandってなんか変じゃない?」.pdf
ssuser3fcec0
PDF
3_「本当の『悪者』って何?」鷗友学園女子中学校_福島 雪乃さんinspirehigh.pdf
ssuser3fcec0
PDF
外国人が日本のテーブルマナーに驚く理由は?_公文国際学園高等部 角田 恵梨佳さん
ssuser3fcec0
PDF
5_「AIと仲良くなるには?」日本大学東北高等学校南梨夢乃さんinspirehigh.pdf
ssuser3fcec0
PDF
「なぜ、好きなことにいつかは飽きるの?」大塚莉子 - My Inspire High Award 2024.pdf
ssuser3fcec0
PDF
My Inspire High Award 2024(岡田秀幸).pptx.pdf
ssuser3fcec0
PDF
8_「世の中の流行はどのようにして生まれるのか」学校法人聖ドミニコ学園竹野はるいpptx.pdf
ssuser3fcec0
PPT
日本語test日本語test日本語test日本語test日本語test日本語test.ppt
sadfwasdf
PDF
7_「なぜ人は他人と違うところがあってもそれをなかなか誇れないのか?」明治大学付属中野八王子中学校宮本ゆりかさん.pdf
ssuser3fcec0
6_「老いることは不幸なこと?」植草学園大学附属高等学校森 珠貴さんinspirehigh.pdf
ssuser3fcec0
9_前田音葉さん:「Yakushima Islandってなんか変じゃない?」.pdf
ssuser3fcec0
3_「本当の『悪者』って何?」鷗友学園女子中学校_福島 雪乃さんinspirehigh.pdf
ssuser3fcec0
外国人が日本のテーブルマナーに驚く理由は?_公文国際学園高等部 角田 恵梨佳さん
ssuser3fcec0
5_「AIと仲良くなるには?」日本大学東北高等学校南梨夢乃さんinspirehigh.pdf
ssuser3fcec0
「なぜ、好きなことにいつかは飽きるの?」大塚莉子 - My Inspire High Award 2024.pdf
ssuser3fcec0
My Inspire High Award 2024(岡田秀幸).pptx.pdf
ssuser3fcec0
8_「世の中の流行はどのようにして生まれるのか」学校法人聖ドミニコ学園竹野はるいpptx.pdf
ssuser3fcec0
日本語test日本語test日本語test日本語test日本語test日本語test.ppt
sadfwasdf
7_「なぜ人は他人と違うところがあってもそれをなかなか誇れないのか?」明治大学付属中野八王子中学校宮本ゆりかさん.pdf
ssuser3fcec0
データベース技術 7(Database 7)
1.
データベース技術 第7回(2015.11.10) 1
2.
データベースを構築する •DBMS(Database Management System)を使う -
SQLによるアクセス機能 • SQLにより条件指定、ソートなど高度な検索が可能 - 高速な検索機能 • インデックスを持つことにより、高速に検索可能 - 排他制御機能 • 行単位、ファイル単位のロック機能により、排他制御が可能 - トランザクション管理機能 • トランザクション単位の更新や復帰が可能 - ログ管理機能 • アクセスログにより復旧が可能 2
3.
SQLの機能 •SQL:リレーショナルデータベースを操作する ためのデータベース言語 - データ定義言語DDL(Data Definition
Language) • 表を作成する、変更する、削除する - データ操作言語DML(Data Management Language) • データを入力する、抽出する、削除する、変更する - データ制御言語DCL(Data Control Language) • ユーザのアクセスなどを管理する 3
4.
SQLiteの基礎知識(1) •コマンドラインツールを使って操作する •起動方法:SQLiteアイコンをクリック ※大学の環境とは 見た目が違います 4
5.
SQLiteの基礎知識(2) •SQL文は最後に「;」が入力されるまでがひとつ のSQL文として扱われる •「;」の後にEnterキーを押すことで実行される •長いSQL文の場合は、途中でEnterキーを押して もOK(「;」が入力されるまでが1文) 5
6.
SQLiteの基礎知識(3) •識別子 - テーブル名、カラム名、データベース名 •SQLiteのキーワード - Database、Table、Create、Selectなどなど •SQLiteのキーワードは識別子に使用しない 6
7.
SQLiteを操作してみよう •SQLiteを起動する •接続中のデータベースを確認する •接続していたデータベースから切断する •データベースを作成する •テーブルを作成する←今日はこの続き 7
8.
データベースに接続する •コマンドプロンプトを起動する •データベースを指定してSQLiteを起動する - コマンドプロンプト上で下記のように入力する • sqlite3
データベース名 • 例:”C:¥Program Files¥sqlite3¥sqlite3.exe” U:¥shop.sqlite3 - 「.database」と入力して目的のデータベースに接続できた ことを確認してみましょう - 先週の復習として「.tables」「.schema」コマンドも実行 してみましょう 8
9.
テーブルの確認 •テーブル一覧を表示する - 「.tables」コマンドを実行 •テーブルの構造を確認 - 「.schema」コマンドを実行 -
テーブル作成時のCreate文が表示される 9
10.
SQLiteのデータ型 •SQLiteでは、カラムのデータ型指定は必須では ない •SQLiteで指定できるデータ型 型 説明 TEXT テキスト INTEGER
符号付整数 REAL 浮動小数点数 NONE 入力データをそのまま格納 NUMERIC 上記以外 10
11.
テーブルの作成(先週の復習) •基本構文 - CREATE TABLE
テーブル名(カラム名1, カラム名2, ...); •カラムにデータ型を指定してテーブルを作成 - CREATE TABLE テーブル名(カラム名1 データ型, カラ ム名2 データ型, ...); •テーブルとカラム - 名前には任意の名前を指定できる - テーブルには少なくとも1つのカラムが必要 11
12.
テーブル名の変更 •ALTER TABLE文を使う - ALTER
TABLE テーブル名 RENAME TO 新テーブル名; •練習:下記を実行してみましょう - create table person(id, name); - alter table person rename to myfriend; .tablesでテーブル名が 変更されたことを確認 12
13.
カラムの追加(1) •ALTER TABLE文を使う - ALTER
TABLE テーブル名 ADD COLUMN カラム名[ デ ータ型]; - 追加したカラムはテーブルの最後に追加される - 追加するカラムは次の条件を満たす必要がある • PRIMARY KEY や UNIQUE 制約は設定できない • DEFAULT 制約を設定する時は、CURRENT_TIME/CURRENT_DATE/ CURRENT_TIMESTAMPは指定できない • NOT NULL 制約を設定する時は、NULL以外のデフォルト値の設定が 必要 13
14.
カラムの追加(2) •練習:下記を実行してみましょう - .schema myfriend -
alter table myfriend add column address text; - .schema myfriend .schema myfriendで カラムが追加されたことを確認 14
15.
テーブルの削除 •DROP TABLE文を使う - DROP
TABLE テーブル名; •練習:下記を実行してみましょう - .tables - drop table myfriend; - .tables .tablesでテーブルが削除 されたことを確認 15
16.
制約の指定 •PRIMARY KEY制約 - INTEGER
PRIMARY KEYの設定 - AUTOINCREMENTの設定 •NOT NULL制約 •UNIQUE制約 •DEFAULT制約 •CHECK制約 16
17.
PRIMARY KEY制約(1) •カラムが主キーであることを示す - 主キーが1つの場合: CREATE
TABLE テーブル名(カラム名 PRIMARY KEY, ・・・); - 複数で主キーの場合: CREATE TABLE テーブル名(カラム名1, カラム名2, ・・・, PRIMARY KEY(カラム名1, カラム名2, ・・・) ); •例: - create table users(id int primary key, name text); 17
18.
PRIMARY KEY制約(2) •実行例 primary keyに指定したカラム「id」は重複が許されないため、 既に入力済みの1を入力しようとするとエラーが表示される。 18
19.
INTEGER PRIMARY KEYの設定 •カラムに自動的に連番で数値が格納される -
自動的に格納される値は、対象のカラムに格納されて いる最大の値に1を加えた値となる • カラムのデータ型は「INT」が含まれる場合、全て INTEGER型となる • 連番が自動的に割り振られるのは「INTEGER PRIMARY KEY」と記述した場合のみ 19
20.
INTEGER PRIMARY KEY実行例 •idカラムに自動で連番が格納されている テーブルを作成 データを格納 データを表示 20
21.
INTEGER PRIMARY KEYの値 •データの入力時に値を省略せずに入力も可能 -
例:insert into myfriend values(10, ‘Inoue’); ※この次に「id」の値を省略してinsertすると、「id」は「11」となる •値の再割り当て - 自動的に数値が設定される際、以前に格納されていた 値(データは削除済)と同じ値が割り当てられること がある - 一度使われた値が二度使われないためには、 「AUTOINCREMENT」を使用する 21
22.
AUTOINCREMENTの設定 •カラムに自動的に連番で数値が格納される - 自動的に格納される値は、対象のカラムに今までに格 納されたことのある最大の値に1が加えられた値となる •AUTOINCREMETNを設定する書式 - CREATE
TABLE テーブル名(カラム名 INTEGER PRIMARY KEY AUTOINCREMENT, ...); 22
23.
NOT NULL制約 •カラムのNULL値を禁止したい場合に使う •書式 - CREATE
TABLE テーブル名(カラム名 NOT NULL, ...); •実行例 「name」にnull値を入力→エラー 「address」にnull値を入力→OK 「name」の値を省略→エラー 23
24.
UNIQUE制約 •カラムの値の重複を禁止したい場合に使う •書式 - CREATE TABLE
テーブル名(カラム名 UNIQUE, ...); •UNIQUE制約が設定されていてもNULL値だけは 重複が可能 - NULL値を避けたい場合は、同時にNOT NULLを設定 24
25.
複数カラムのUNIQUE制約 •書式 - CREATE TABLE
テーブル名(カラム名1, カラム名2, ... , UNIQUE(カラム名1, カラム名2, ...)); •それぞれのカラムは重複しても良いが、指定した 複数カラムの組み合わせの重複が禁止される •実行例 25
26.
DEFAULT制約 •値を省略した際にデフォルトで格納される値を 指定したい場合に使う •書式 - CREATE TABLE
テーブル名(カラム名 DEFAULT 値, ...); - 値にはNULL、数値、文字列が指定できる •例:「name」と「price」にデフォルト値を指定 - create table product(id integer, name text default 'no name', price integer default 0); 26
27.
CHECK制約 •カラムに格納する値が条件に一致しているか 判定したい場合に使う •書式 - CREATE TABLE
テーブル名(カラム名 CHECK(条件式), ...); •例:カラム「old」は負の値はNGとする - create table user(id integer, name text, old integer check(old > 0)); 27
28.
Work:小テストテーブルの作成 •下記の2つのテーブルを作成してみましょう 「sales」表 「sales_detail」表 フィールド名 データ型 制約 id
INT PRIMARY KEY, NOT NULL, AUTO_INCREMENT date TEXT NOT NULL country INT フィールド名 データ型 制約 report_id INT PRIMARY KEY, NOT NULL item_id INT PRIMARY KEY, NOT NULL count INT NOT NULL 28
29.
参考文献 •SQLite入門 http://www.dbonline.jp/sqlite/ 29
Download