データベース Part2

このエントリーをはてなブックマークに追加
932デフォルトの名無しさん:03/06/06 07:41
文書をフィールドの型情報とフィールド値情報に分けて、
文書データ自体は「key=value」形式で持てばよいんじゃないかな。

文書のフォーマットを以下のようなモデルとする。
 文書型(文書型ID, フィールド名, フィールド型ID)
 フィールド型(フィールド型ID, 値型)

文書データを以下のようなモデルとする。
 文書データ(文書ID, フィールド名, バージョンID, データ, 入力者)

ある文書IDで指定された文書の更新履歴を出す場合は、
 SELECT フィールド名, バージョンID, データ, 入力者
 FROM 文書データ
 WHERE 文書ID=12345678
 ORDER BY フィールド名, バージョンID

933デフォルトの名無しさん:03/06/06 10:55
「履歴の保存がない」ってことなんで、イージーに、
文書データ( ID、最終更新者、項目A、項目Aの状態、項目B、項目Bの状態、・・・)
って感じでもいいんじゃないの、もうこのさい。
いや、この際データベースに対して変更したら
相手先に『項目Aを変更しました』って電話すれば
(・∀・)イイ!と思う。
>934
其れは…せめて IPmsgとか電波とかマジックパケットとかPingOfDeathとか伝書鳩とか
のほうが面白みがあるよ。
936デフォルトの名無しさん:03/06/30 13:44
DB板
http://pc2.2ch.net/db/
専用板できました。
>>936
完全に主旨がかわっとる(w
板作るほど必要じゃないと思うが
もう何がなんだか・・・。
>>938
ネタ板に立てんな。
942デフォルトの名無しさん:03/07/01 03:50
>>941
データベース板ということになったみたいです。
これ以上この板で続けるのはまずいですね。
>942
いや、未だそういうわけには…
944デフォルトの名無しさん:03/07/01 20:36
テクニカルエンジニアの勉強でSQLを実際書いて動かしたいんですが、
どのソフトがいいでしょうか?
945コミュカレ:03/07/01 21:34
DBMのオープンソースです。DB2/DB3 だったらいいかも

http://www.ecopig.jp/comucale/index.htm

一部の限られた組織等でしか利用されていなかったグループウェアを、
一般ユーザーも利用できるインターネット上のパーソナルグループウェアへ
「コミュカレ」はフリーソフトです。
ゴミの収集日等、地域の皆様どおしでも使えます。使い方はユーザー次第!!!
いろんな活用の仕方が考えられます。
その便利さを是非お試しになってみて下さい。
>>936
> DB板
> http://pc2.2ch.net/db/
> 専用板できました。
すごい板だな(w
947デフォルトの名無しさん:03/07/01 22:43
GNUのGDBMの初心者サイトとかってありますか?
GDBMについて詳しくわかりやすく載っているサイトがあれば
教えてください。
948デフォルトの名無しさん:03/07/01 22:45
>>948
ありがとうございます
DB板はデータベース板でOKなのかな。
もしそうなら巡回対象にするんだけど。
951デフォルトの名無しさん:03/07/02 00:08
ありがと。
まだ微妙だけど書き込みまくってデファクトにするか。
953デフォルトの名無しさん:03/07/04 11:43
質問があるのですが、
AS400上にあるDB2にデータベース及び複数のテーブルが存在しています。
このテーブル群からCREATE TABLE文を取得したいのですが、そういった
ツールはありますでしょうか。
ASは顧客元にあり、そこのITの話によれば、DB2のCREATEをはけるツールは契約していない
とのことでした。
そこで、ODBCなどで代行は可能ではないかと思った次第です。

まとめますと、
CSEのようなODBCで接続するデータベースツールで、テーブルのCREATE TABLE文をはける
ツールはありますか?
954デフォルトの名無しさん:03/07/04 19:42
タイムスタンプフィールドに、「今日」指定みたいなwhere句はどう書きますか?
955デフォルトの名無しさん:03/07/04 19:54
DBによって違う
>>953
別にツール使わなくてもデータディクショナリを照会して適当にDDLはかせたらいいんじゃない。
957デフォルトの名無しさん:03/07/07 20:39
このスレは終了しました。
下記の板に個別にスレ立てて聞いて下さい。
データベース
http://pc2.2ch.net/db/
テスト
DB板ダメダメ。
技術っているいるのに、Oracle最高とか
そんなことばかりで、さらにマ板や他の
知ったかばかり集まり、実際の運用とか
制御スクリプトとかの話題がない。
スレ立てたらドラゴンB厨が荒らしまくるし、
ギスギスしてもいいからム板がいい。
と言ってももう板違いか...
なんか変な言葉になった...
s/技術っているいるのに/技術って言っているのに/
様子見てる奴が多いんだろ
低レベルな質問で申し訳ないのですが、履歴を持つ為に注文毎にテーブル増やすのは変ですか?
一回の注文で200種類ほどの内訳があるのですが、どうしていいものか悩んでます。
>>962
>どうしていいものか・・・
まずは正規化してみろ。
と、先輩が言ってますた。
とりあえず、正規化というものについて調べてみます。ありがとうございました。
>>962-964
マジかよ!って多分間違ってはいないだろうけど。
>>962
俺だったら正規化して
注文の明細部分のキーを含む履歴テーブルを作成
データの追加,編集が小規模(1〜2クライアント)なら
日付(時間を含む)をキーに大規模なら他にキーを作成すると思う。
>>962
> 履歴を持つ為に注文毎にテーブル増やすのは変ですか?
ひとつ注文が入るたびにテーブル追加するの?それだったら変。

単にひとつ履歴テーブル作っておいてそっちに移すというのならよくやる。
注文の明細が別テーブルならそっちの履歴テーブルも作る。
>>962
悪い例として言っておくと、そういうことを俺はやった事が有る。
仕事じゃなくて個人的にだけど。。
その時は後になって後悔したなぁ。設計段階では気にならないかもしれないけど
プログラムを実装しているとめんどくさい事に気づく。
それからはもうやらなくなった。

あぁ、今思えば恥ずかしい設計だった。
テーブルなどの命名規則ってどういうのが一般的なのでしょう?
>969
テーブル: tbl_hogeMoge
フォーム: frm_hogeMoge
クエリ: que_hogeMoge
レポート: rpt_hogeMoge
マクロ: mcr_hogeMoge
971山崎 渉:03/07/15 10:04

 __∧_∧_
 |(  ^^ )| <寝るぽ(^^)
 |\⌒⌒⌒\
 \ |⌒⌒⌒~|         山崎渉
   ~ ̄ ̄ ̄ ̄
972デフォルトの名無しさん:03/07/16 09:49
ADOとSQL鯖、言語はVBを使ってます。
皆さんは、鯖へのConnectionってどのタイミングで切断してますか?
アプリケーション起動時に接続して、終了時に切断する、つまりアプリケーション起動中繋ぎっぱなし
なのか、それとも、接続が必要になった時だけ繋いで、処理が終わったらすぐ切断するのか。
どっちが普通なのでしょうか?
ライセンスとクライアント数による。

普通はつなぎっぱなしでいいと俺は思う。
あぁなるほど、その辺によって変わる訳ですね。
今までせいぜいクライアント5台程度のシステムしか触ったことが
なかったので想像が及びませんでした。
OSはXPなんですが、
TTSSH、TeraTerm Pro をインストールして、接続までできたんですが、
文字が全く入力出来ないんです。
キーボードの設定が悪いのでしょうか?
どうすれば文字が打てるようになるのか教えて下さい。
質問です。
表がずれてしまっていてすみません。
レシート番号、日付、時間、小計、税金、預かり金、お釣りのデータが入ってるのは、
1行目と3行目だけです。

レシートに記載されてる項目を表にした。
<表1>
レシート  日付   時間   商品名    単価  数量  小計  税金  預かり金 お釣
番号
1 11:30 ホットコーヒー 300 1 600 30 1000 270
チーズケーキ 300 1
2 2003.6.17 12:01 アイスティー 300 1 1400 70 2000 530
ホットコーヒー 300 1
ハムトースト 400 1
シフォンケーキ 400 1
●各レシートは、レシート番号と日付により一意に決まるので、{レシート番号、日付}は
  候補キーである。他に候補キーはないので、これを主キーとした。
●税金は、小計*0.05で計算する。言い換えると、税金は小計に関数従属する。
●関数従属は他にもある。
上の続きなのですが、
「問題1」
表1を以下の表2と表3に分解した。
(1)表2、3の主キーを示せ。
(2)この分解は、無損欠結合分解か?
(3)表2、表3は第一正規形か?

<表2>
レシート番号   日付     商品名    単価   数量
   1 2003-6-17 ホットコーヒー  300 1
1 2003-6-17 チーズケーキ 300 1
2 2003-6-17 ジンジャエール 300   1
2 2003-6-17 ホットコーヒー 300 1
2 2003-6-17 ハムトースト 400 1
2 2003-6-17 シフォンケーキ 400 1

<表3>
レシート番号   日付   時間   小計  税金  預かり金  お釣り
   1 2003.6.17 11:30 600 30 1000 270
2 2003.6.17 12:01 1400 70 2000 530

<問題2>表3は、第三正規形でない。その理由を示せ。

この問題の答えを教えて下さい。お願いします。
(上の二つの表もずれてしまっていてすみません)
>>977
宿題は自分でね。