mysql:10877
From: nomoto <nomoto <shin-1@xxxxxxxxxx>>
Date: Fri, 04 Feb 2005 12:48:44 +0900
Subject: [mysql 10877] Re: リレーショナルDBの考え方?
こんにちは。野元です。 >とても初歩の質問でお恥ずかしいのですが、どうかご指導 >よろしくお願いいたします。 Accessと決別した事は正しい判断です。 Accessで慣れてしまったからといってWEBシステムにAccessDB をそのまま流用して破綻したケースをいくつも見てきました。 リレーショナルデータベースに対する理解は正しいと思います。 http://www.atmarkit.co.jp/icd/root/08/5787108.html クエリとは通常、データベースエンジンに発行するSQL文そのもの を指します。 AccessはGUIでデータ操作できる事が前提なので、そのような複雑 なSQL文をクエリという目に見える形で定義して、SQL文の組み立て をあらかじめ登録していると思って下さい。 Accessでは複雑なシステムになると定義されたクエリが山のよう に増えてしまい、すでに使われなくなったクエリが沢山残って整理 できなくなっているような例もよく見かけます。 PHPであれば特定の社員コードをもつ社員の部署名と氏名を欲しい 場合は、プログラムからその都度、busyoテーブルとsyainテーブル をjoinして以下のようなクエリを発行します。 select busyo.name, syain.name from busyo join syain using (busyo_cd) where syain.cd=123005 これは両方のテーブルが同じbusyo_cdという項目で繋がって いる事を知らせています。項目名が違う場合はonで表記します。 FOREIGN KEY(外部キー)として、テーブル定義時にある項目が 他のテーブルの項目と関連している事を指定する事もできま すが、 http://dev.mysql.com/doc/mysql/ja/ansi-diff-foreign-keys.html それが必ずしもプログラムを簡単にする場合ばかりでは ありませんので、まずはさまざまなSQL文(クリエ)を組み立て られるようにSQLテクニックの経験をつむことが大事だと思います。 そういうわたしもFOREIGN KEYは滅多に使いませんね。
10876 2005-02-04 12:15 ["saori" <hibiki@xxxx] リレーショナルDBの考え方? -> 10877 2005-02-04 12:48 ┣[nomoto <shin-1@xxxxx] 10878 2005-02-04 13:06 ┃┗[<hibiki@xxxxxxxxxx> ] 10886 2005-02-04 16:12 ┃ ┗[深海水草 <VYG01106@x] 10893 2005-02-05 22:14 ┃ ┗[<hibiki@xxxxxxxxxx> ] 10895 2005-02-06 18:32 ┃ ┗[深海水草 <VYG01106@x] 10896 2005-02-07 05:58 ┃ ┗["kanariya" <hibiki@x] 10879 2005-02-04 13:11 ┗[al-kamil <al-kamil@x] 10880 2005-02-04 13:36 ┗[al-kamil <al-kamil@x] 10881 2005-02-04 14:09 ┣[<yasuyuki@xxxxxxxxxx] ViEW and MySQL5 (Re: リレーショナルDBの考え方?) 10882 2005-02-04 14:14 ┗[<hibiki@xxxxxxxxxx> ]