タグ付けされた質問 「database-design」

データベースの設計とは、データベースの構造、つまりデータベースの論理的な側面を指定するプロセスです。データベース設計の目標は、データベースがモデル化しようとしている事実の種類、ビジネスルール、およびその他の要件である「談話の世界」を表現することです。




8
MySQL-郵便番号を「0」で埋める方法は?
MySQL InnoDBデータベースに、クリーンアップしたいダーティな郵便番号データがあります。 クリーンな郵便番号データとは、郵便番号の5桁すべて(「90210」など)を取得したときです。 しかし、何らかの理由で、データベースで、「0」で始まる郵便番号の場合、0が削除されていることに気付きました。 したがって、郵便番号「」の「ニューヨーク州ホルツビル00544」が「544」としてデータベースに保存されます そして 「郵便番号「」の「デダム、マサチューセッツ州」が「02026」としてデータベースに保存されています2026。 長さが5桁ではない郵便番号の前に「0」を埋めるために、どのSQLを実行できますか?つまり、郵便番号の長さが3桁の場合、フロントパッドは「00」になります。郵便番号の長さが4桁の場合、フロントパッドは「0」のみになります。 更新: 郵便番号をデータ型VARCHAR(5)に変更しました

12
テーブルの命名:アンダースコアとキャメルケース?名前空間?単数形と複数形?
私はStackOverflowでいくつかの質問/回答を読んで、データベース上のテーブルに名前を付けるための「最良の」方法を見つけようとしています。 ほとんどの開発者は、データベースを必要とする言語(JAVA、.NET、PHPなど)に応じてテーブルに名前を付ける傾向があります。しかし、私はこれが正しくないと感じています。 これまでテーブルに名前を付けてきた方法は、次のようなことです。 doctorsMain doctorsProfiles doctorsPatients patientsMain patientsProfiles patientsAntecedents 私が懸念していることは次のとおりです。 読みやすさ テーブルのモジュールのクイック識別(医師||患者) 混乱を防ぐために、理解しやすい。 命名規則に関するご意見をお聞かせください。ありがとうございました。

3
MongoDBスキーマ設計-小さなドキュメントが多いですか、それとも大きいドキュメントが少ないですか?
背景 RDBMSデータベースからMongoDBへの変換のプロトタイプを作成しています。非正規化している間、2つの選択肢があるように見えます。1つは数百万の小さなドキュメントにつながるか、もう1つは少数(数十万)の大きなドキュメントにつながるかです。 それを単純なアナログにまとめることができれば、次のような顧客ドキュメントが少ないコレクションとの違いになります(Javaの場合)。 クラス顧客{ プライベート文字列名。 プライベートアドレスアドレス; //各CreditCardには数百のPaymentインスタンスがあります プライベートセット<CreditCard>クレジットカード; } または、次のような多数の支払いドキュメントを含むコレクション: クラス支払い{ 個人顧客顧客; プライベートクレジットカードクレジットカード; プライベート日付payDate; プライベートフロートpayAmount; } 質問 MongoDBは、多数の小さなドキュメントを優先するように設計されていますか、それとも少数の大きなドキュメントを優先するように設計されていますか?答えは、実行する予定のクエリに大きく依存しますか?(つまり、顧客Xは何枚のクレジットカードを持っていますか?vsすべての顧客が先月支払った平均金額はいくらでしたか?) 私はよく調べましたが、質問に答えるのに役立つMongoDBスキーマのベストプラクティスに出くわすことはありませんでした。

26
主キーはどうですか?[閉まっている]
現在のところ、この質問はQ&A形式には適していません。私たちは回答が事実、参考文献、または専門知識によってサポートされることを期待しますが、この質問はおそらく議論、議論、投票、または拡張された議論を誘います。この質問を改善でき、再開できると思われる場合は、ヘルプセンターにアクセスしてください。 8年前に閉鎖。 私のチームでのかなり活発な議論で、私はほとんどの人が主キーとして好きなものを考えるようにさせられました。次のグループがありました Int / BigIntは、自動インクリメントで十分な主キーです。 主キーを構成する列が少なくとも3つ必要です。 Id、GUID、および人間が読める行識別子は、すべて異なる方法で処理する必要があります。 PKの最善のアプローチは何ですか?あなたがあなたの意見を正当化できればそれは素晴らしいでしょう。上記より良いアプローチはありますか? 編集:誰でも簡単にサンプル/アルゴリズムを使用して、適切にスケーリングできる行の人間が読める識別子を生成できますか?

5
データベースが常に円柱で表されるのはなぜですか?[閉まっている]
クローズ。この質問は意見に基づいています。現在、回答を受け付けていません。 この質問を改善したいですか?この投稿を編集して、事実と引用で回答できるように質問を更新してください。 2年前に閉鎖されました。 この質問を改善する この質問は今日出てきましたが、データベースが常に円柱として表される理由についての歴史的な答えは見つかりませんでした。スタックの世界の誰かがその理由を知っていて、それをバックアップするリンクや何かを持っていることを願っています。

10
PostgreSQLインデックス使用分析
Postgresを分析し、どの欠落インデックスを作成し、どの未使用インデックスを削除するかを決定するためのツールまたは方法はありますか?SQLServerの「プロファイラー」ツールでこれを行った経験は少しありますが、Postgresに含まれている同様のツールを知りません。

5
Oracle Database 11gで新しいスキーマ/新しいユーザーを作成するにはどうすればよいですか?
私は会社でのインターンシップに応募しましたが、質問として、特定の要件を備えた会社のスキーマを作成し、DDLファイルを郵送するように求められました。Oracle Database 11g Express Editionをインストールしましたが、Oracle Database 11gで新しいスキーマを作成するにはどうすればよいですか?ネットで解決策を探しましたが、どうしたらいいのかわかりませんでした。スキーマを作成した後、どのファイルをメールで送信する必要がありますか?


6
データベースに営業時間を保存する
私は現在、営業時間をデータベースに保存するための最良の方法を模索しています。 例えば: ビジネスAの営業時間は次のとおりです 月曜日:午前9時〜午後5時 火曜日:午前9時〜午後5時 水曜日:午前9時〜午後5時 木曜日:午前9時〜午後5時 金曜日:午前9時〜午後5時 土曜日:午前9時〜正午 日曜日:休業 現在、私は次のようなデータモデルを持っています CREATE TABLE "business_hours" ( "id" integer NOT NULL PRIMARY KEY, "day" varchar(16) NOT NULL, "open_time" time, "close_time" time ) ここで、「日」はコード内の7日間の選択に制限されています(ORMを介して)。ビジネスが特定の日に休業しているかどうかをテストするために、open_timeとclose_timeがNULLであるかどうかを確認します。これは、中間テーブル(多対多の関係)を介してビジネスに関連しています。 このデータベーススキームについて何か提案はありますか?それについての何かが私には正しくないようです。


4
Django-プロパティを外部キーとして使用する
アプリのデータベースにデータが入力され、外部データソースとの同期が維持されます。私のDjango 2.2アプリのすべてのモデルが派生する抽象モデルがあり、次のように定義されています。 class CommonModel(models.Model): # Auto-generated by Django, but included in this example for clarity. # id = models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID') ORIGIN_SOURCEA = '1' ORIGIN_SOURCEB = '2' ORIGIN_CHOICES = [ (ORIGIN_SOURCEA, 'Source A'), (ORIGIN_SOURCEB, 'Source B'), ] object_origin = models.IntegerField(choices=ORIGIN_CHOICES) object_id = models.IntegerField() class A(CommonModel): some_stuff = models.CharField() class …
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.