- ベストアンサー
データベースを設計するときに
DB定義の言葉で、マスタ、テーブル、トランなどがありますが、マスタとテーブルの違いがよくわかりません・・。 具体的な違いはなんでしょうか? 教えて下さい。 よろしくお願いします。
- みんなの回答 (2)
- 専門家の回答
関連するQ&A
- データベース設計支援ツール
いろんなプロジェクトでデータベースの設計を何度かやっていると、似たようなテーブル名やカラム名。 また、似たような定義になってきます。 テーブル定義書などは、Excelなどで管理しているのですが、ツールか何かで管理したいと思っています。 そうすれば、異なるプロジェクトでも共有できますし、生産性の向上に繋がると思っています。 できれば、似たようなテーブル(部門マスタテーブルなど)は自動で作ってくれるくらいが理想ですが・・・。 そのようなツールってありますでしょうか?
- ベストアンサー
- その他(データベース)
- データベースの設計について教えてください。
データベースの設計について教えてください。 基本的な質問ですみません。宜しくお願いいたします。 単純なテーブルで表現しますが、 パターンA、Bのどちらのテーブルで設計するのが良いのでしょうか。 DBはmysqlで5000万件のデータで検索のみのデータベースです。 【前提】 ユーザは複数のメールアドレスを持ちます。 画面から、このユーザのもつメールアドレスを表示させる仕様だとします。 【userマスタ】 (PK)ユーザID ユーザ名 会社名 <パターンA> 【mailテーブル】 (PK)ユーザID (PK)ユーザメールアドレス モバイル用アドレス <パターンB> 【mailテーブル】 (PK)ユーザメールアドレス モバイル用アドレス ユーザID ←インデックスをはります。
- ベストアンサー
- MySQL
- 異なるデータベース間のテーブル結合
DB名:db1 TABLE名:得意先マスタ DB名:db2 TABLE名:ユーザマスタ 以上のように、異なるデータベースに存在する2つのテーブルをLEFT JOINさせたいです。 結合条件は ユーザマスタ.得意先コード = 得意先マスタ.得意先コード とします。 この場合の結合方法を教えてください。 以下のようなSQL文を書いても駄目でした。 SELECT * FROM db1.ADMINISTRATOR.得意先マスタ AS 得意先マスタ LEFT OUTER JOIN db2.ADMINISTRATOR.ユーザマスタ AS ユーザマスタ ON ユーザマスタ.得意先コード = 得意先マスタ.得意先コード よろしくお願いいたします。
- 締切済み
- その他(データベース)
- データベースの設計について
現在PostgreSQL(ver 8.4)を使ってちょっとしたシステムの構築を計画していますが、データベースの設計に関して広くアドバイスを頂きたいです。 ユーザーの入力データをDBで効率よく管理したいと考えています。 例えば、次のようなテーブルを作るとします。 userテーブル id | name ---+------------- 1 | 山田太郎 2 | 高橋次郎 .. | ............. .. | ............. emailテーブル id | address ---+------------------------------ 1 | yamada@mail.com 2 | takahashi@mail.com .. | ................................. .. | ................................. この様な複数のテーブルにユーザーの入力を受け、1対1に対応するIDを振って名前やアドレスなどのデータをリアルタイムで挿入していく場合、どのようなテーブルを用意し、プログラムを組むのが適切なのでしょうか? 具体的には、PerlでCGIをつくり、ブラウザ上などからユーザーの入力したデータを取得してPostgreSQLに次々挿入していく形にしようとしています。 具体的なPerlのコードを書いていただけると助かるのですが、他の言語のコードでも一向に構いません。 今のところ、自分で考えたものとしては、 create table user( id serial, name text); create table email( id serial, address text); とテーブルを用意し、 Perlコードの概要は use DBI; # *実際にはユーザーの入力値から値を得る $input_user = 'name_hogehoge'; $input_email = 'address_hogehoge@mail.com'; # DBとの接続 $dbh = DBI->connect("dbi:Pg:dbname=hogehoge", ......); # プレースホルダの準備 $sth_user = $dbh->prepare("INSERT INTO user (name) VALUES(?)"); $sth_email = $dbh->prepare("INSERT INTO email (address) VALUES(?)"); # SQLの実行 $sth_user->execute("$input_user"); $sth_email->execute("$input_email"); # コミット $dbh->commit; といった感じで考えていました。しかしidの対応が確実に取れるかなど不安な点がありますので、アドバイスいただけたらと思います。 もちろんこの方法に固執する必要はなく、結果的に同じようなテーブルが得られれば問題ないです。 長々と失礼致しました。
- ベストアンサー
- PostgreSQL
- データベースの設計をしています。
データベースの設計をしています。 ユーザマスタというテーブルがあり、 その中には、個人または企業のデータが入ります。 マスタ登録時に個人と企業は微妙に必須項目が違います。 (例えば、企業の場合は代表者名が入る、など) 要件としては、「企業だけを検索したい」というものもあります。 ここで質問なのですが、 (1)ユーザマスタに「企業フラグ」をつけて、それが「1」のものと検索する (2)代表者名に値が入っているものを検索する この場合、(1)と(2)ではどちらが検索が速いのでしょうか。 (1)の方が、気分的に(なんとなく、です)速い気がするのですが、 (1)だと、余分にカラムを持つことになり、もし(1)も(2)も同じ速さOR(2)の方が速い場合には 無駄だなあ、と思って困っております。 どなたかお詳しい方がいらっしゃいましたら、 どうぞよろしくお願い致します。
- ベストアンサー
- MySQL
- 「マスタ」と「テーブル」の違いとはなんでしょうか?
マスタとテーブルの違いについて教えてください。 DBにおける、 「マスタ」と「テーブル」の違いはなんなのでしょうか? 両方とも「テーブル」であるのにも関わらず、 どうしてある特定の「テーブル」には「マスタ」という別名が付けられているのでしょうか? [参考サイト様] ttp://homepage1.nifty.com/silabel/it/master_table.html 下記のような概念の認識、分け方で合っていますでしょうか? ■マスタ ・DBを使用するに当たって、主体となるテーブルがマスターである。 ・主に他のテーブルに対して、登録・参照処理が行われた場合に、 マスタと位置づけされたDBがWhere条件に入る。 ・システム上で良く使用するDBである。 これらによって「マスタ」と付けられている。 ■テーブル ・あるDB上の用途によって、ジャンル分けされたデータが格納された情報の箱。 ・リレーショナルデータベースでは二次元の表として扱われる。 テーブルとはDB上でデータを格納する為の箱である。 「マスタ」と「テーブル」の違いについて、このような認識、分け方で合っていますでしょうか?
- 締切済み
- Oracle
- マスタとファイルの違いって?
初歩的な質問ですが。。。。ファイルとマスタの違いが良く分かりません。具体的には、○○ファイルとか△△マスタなど、ネーミングがされていますが名前の使い分けが良く分かりません。××トランというものもありどういった使い方をすればいいのでしょうか?
- ベストアンサー
- その他(データベース)
- データベースにあった効率なフィールドの書き方?
MySQL4とMySQL5を使っています。 データベース不慣れで、言葉や考え方が間違っているかもしれませんが、 例えば以下のようなフィールドを持つテーブルがあり、 どちらがデータベースにとって効率良い(スピードやDBサイズ) のでしょうか? 例1)1レコード128バイト bigint position zyusyo char(120) 例2)1レコード256バイト bigint position zyusyo char(248) MySQLに限らず、他のDBもフィールドの定義仕方で効率が変わることは、あるのでしょうか? このようなことはDBチューニング?というものでしょうか? 語彙不足で申し訳ありません。
- ベストアンサー
- MySQL
- データベースの変換
access97のdbをaccess2003のdbに変換したく、その方法を知りたいのですが... 但し、その手順をバッチファイルに記述し、そのバッチファイルを開くことによりその手順を自動実行したいと思っています。もう少し具体的に言いますとusb diskに格納されているaess97のdbの中のtableをacess2003のdbに移したいのですが、何か良い方法がありましたらご教授下さい。
- ベストアンサー
- その他(データベース)
- 2パターンのデータベース設計で最適なほうはどちら?
こんにちは。 データベース設計をするにあたり、迷っています。 言語はRuby on rails、DBはMysqlです。 たとえば日記サイトを作るとして (1)テーブル : users , diariesがあって、それぞれのidはuser_diaries というリレーション用のテーブルを作って持たせる (2)テーブル : users , diariesがあって、diaries にuser_id というカラムを持たせる というような作り方ができると思うのですが、どちらが優れていると言えるでしょうか? 決めの問題でしょうか? 将来的に大きなサイトになっても大丈夫なようにしておきたいです
- 締切済み
- MySQL
- アルゼンチンタンゴのレッスンを受ける際の講師選びについて悩んでいます。女性の初心者として、男性講師や女性講師、男女ペアの講師のどれが良いのか迷っています。
- 3つの教室候補があり、それぞれが異なる講師の指導を行っています。女性の振りを指導するのは女性講師が良いのか、ペアでのお相手もしてもらえるのは男性講師が良いのか、迷っています。
- 体験レッスンを受ける際は少人数の教室を選ぶ予定ですが、他に気をつけるべき点や経験者のアドバイスなどがあれば教えていただきたいです。
お礼
とても勉強になりました!! ありがとうございました!!