問題タブ [database-schema]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
2 に答える
1179 参照

jdbc - db4o などのオブジェクト データベースでのデータ メンテナンスの処理

db4oのようなオブジェクト データベースを使用する際に、私が非常に混乱していることの 1 つは、通常は SQL/PL-SQL によって処理される複雑な移行をどのように処理する必要があるかということです。

たとえば、my_users というリレーショナル データベースにテーブルがあるとします。もともと「full_name」という名前の列がありましたが、ソフトウェアが V2 になったので、この列を削除し、フル ネームを空白スペースで分割し、最初の部分を「first_name」という名前の列に入れ、2 番目の部分を列に入れたいと考えています。 last_name という名前です。SQL では、「first_name」列と「second_name」列にデータを入力してから、「full_name」という名前の元の列を削除します。

db4oのようなものでこれを行うにはどうすればよいですか? User.class のすべてのオブジェクトを検索し、first_name と last_name を設定しながら full_name を null に設定するスクリプトを作成する Java プログラムを作成する必要がありますか? 次の svn commit を行うと、full_name に対応するフィールド/bean-property がなくなりますが、これは問題になりますか? 私の「スキーマ」が変更される本番アプリケーションでそれを使用するように思えますが、バージョン x からバージョン x+1 にデータを移行するスクリプトを作成し、バージョン x+2 で実際にしようとしているプロパティを削除します。タイプの一部ではなくなったプロパティを変更する Java スクリプトを作成できないため、バージョン x+1 では削除してください。

問題の一部は、RDBMS が参照しているオブジェクトを単純な大文字と小文字を区別しない文字列ベースの名前に基づいて解決することのようです。Java のような言語では、型付けはこれよりも複雑です。ゲッターがプロパティを参照できない場合/setter/field は実行時にロードされるクラスのメンバーではないため、基本的に同じスクリプトに 2 つのバージョンのコードを含める必要があります (うーん、カスタム クラスローダーは苦痛のように聞こえます)。新しいバージョンのクラスを格納します。別のパッケージ (ごちゃごちゃしているように聞こえます) を使用するか、前述のバージョン x+1 x+2 戦略を使用します (さらに多くの計画が必要です)。おそらく、db4o ドキュメントから収集したことのない明白な解決策があるでしょう。

何か案は?うまくいけば、これはある程度の意味があります。

0 投票する
5 に答える
7205 参照

database-design - CRUDプログラマーが「承認ワークフロー」について考えるのを手伝ってください

私は基本的にCRUDアプリケーション(作成、読み取り、更新、削除)であるWebアプリケーションに取り組んできました。最近、私は「承認ワークフロー」と呼んでいるものに取り組み始めました。基本的に、リクエストはマテリアルに対して生成され、承認のためにマネージャーに送信されます。要求された内容に応じて、さまざまな人が要求を承認するか、変更のために要求者に送り返す必要があります。承認者は、何が承認されたかを追跡する必要があり、要求者は、要求のステータスを確認する必要があります。

「CRUD」開発者として、私はこれを設計する方法に頭を悩ませることに苦労しています。どのデータベーステーブルが必要ですか?リクエストの状態を追跡するにはどうすればよいですか?リクエストに対して発生したアクションをユーザーに通知するにはどうすればよいですか?

彼らのデザインパターンは私をこれに役立てることができますか?コードでステートマシンを描画する必要がありますか?

これは一般的なプログラミングの質問だと思いますが、何か違いがあれば、MySQLでDjangoを使用しています。

0 投票する
4 に答える
5645 参照

database-design - データベース ビューが使用される理由

db design right method で "view" を使用していますか、それともコード側で処理する必要がありますか? 利点または欠点は何ですか?

0 投票する
1 に答える
877 参照

database - postgresql 重複テーブル名のベスト プラクティス

私の会社には、構築した Web サイトにデプロイするアプリがいくつかあります。最近、非常に古いアプリを新しいアプリと一緒に含める必要があり、両方のアプリで使用する必要があるテーブル名が重複しているという競合がありました。

現在、古いアプリの更新を進めており、DB の更新がいくつかあります。これらの名前の競合が起こらないようにするために、人々がベスト プラクティスと見なすもの (またはその方法) に興味があります。

スキーマを調べましたが、それが正しい道であるかどうかはわかりません。ドキュメントで規定されているように、特定のスキーマ名をアプリケーションに「配線」したくありません。また、スキーマをユーザー検索パスに追加すると、2 つのスキーマが同じテーブル名を持っている場合、参照しているテーブルをどのように知ることができますか。とはいえ、多分私はこれについて多くのことを読んでいます。

洞察や知恵の言葉は大歓迎です!

0 投票する
3 に答える
3338 参照

database-design - 卸売オンラインティーストアのデータベーススキーマを作成するためのヘルプが必要

私は現在、卸売オンラインTシャツショップに取り組んでいます。私はこれを固定の数量と価格で行いましたが、正常に機能しています。今、私は可変の数量と価格でこれを行う必要があります。

このリファレンスサイトに基づいてデザインを作成しようとしています。

私が作成した基本的なテーブルは次のとおりです。

可変数量に基づいて価格を保存する方法がわかりません。例-

製品とそれに関連するテーブルの作成を手伝ってください。私の要件は上記の参照リンクと同じです。

0 投票する
7 に答える
76185 参照

database - Oracleの1つのレコードを指す外部キーの依存関係を見つける方法は?

私は非常に大規模なOracleデータベースを持っており、多くのテーブルと数百万の行があります。それらの1つを削除する必要がありますが、それを削除しても、外部キーレコードとしてそれを指す他の依存行が壊れないことを確認したいと思います。この行を指す他のすべてのレコード、または少なくともテーブルスキーマのリストを取得する方法はありますか?自分で削除して例外をキャッチできることはわかっていますが、スクリプトを自分で実行することはなく、最初からクリーンに実行する必要があります。

OracleのSQLDeveloperツールとAllRoundAutomationsのPL/SQLDeveloperツールを自由に使用できます。

前もって感謝します!

0 投票する
3 に答える
5189 参照

sql - オンラインの共同スキーマ設計 (Google ドキュメントを活用しますか?)

オンラインの共同データベース スキーマ デザイナーを探しています。アプリケーションは MySQL 専用ですが、一般的な DB デザイナーでも問題ありません。リビジョン (変更履歴) を処理できることが重要です。

これはクールに見え、サーバーでホストできますが、マルチユーザーを処理するようには見えません: http://ondras.zarovi.cz/sql/demo/

現在、Google docs/spreadsheets で多くのデザイン コラボレーションを行っています。スキーマ設計に Google スプレッドシートを使用して成功した人はいますか? 線や接続を描画するためのガジェットがあったとしても、Google Docs を試すかもしれません。

0 投票する
8 に答える
26668 参照

hibernate - Hibernate: 見つかった: float、予想される: 倍精度

Oracle Float double precision データ型から Java Double データ型へのマッピングに問題があります。Java Double データ型が使用されている場合、hibernate スキーマ バリデータが失敗するようです。

これを回避する唯一の方法は、スキーマの検証を無効にして、実行しようとしているアプリとスキーマが同期していることを確認することです。本番環境に入る前に修正する必要があります。

アプリの環境:
- Grails 1.2.1
- Hibernate-core 3.3.1.GA
- Oracle 10g

0 投票する
2 に答える
2872 参照

postgresql - 複数の言語でテキストを格納するためのデータベース スキーマを設計する方法は?

PostgreSQL データベースがあります。また、特定のデータを複数の言語で保持する必要があるテーブルがいくつかあります (ありがたいことに、可能な言語のリストはシステム全体で定義されています)。

たとえば、次から始めましょう。

では、多言語化してみましょう。どうですか:

これは、Postgres での全文検索に適しています。言語ごとに tsvector 列を追加するだけです。

しかし、それは最適ですか?翻訳を保持するために別のテーブルを使用する必要がありますか? お気に入り:

ひょっとしたら、何か他のもの、つまり SQL の世界からかけ離れたものを使用する必要があるのではないでしょうか? どんな助けでも大歓迎です。

0 投票する
2 に答える
923 参照

geolocation - 位置情報データの保存と操作には、どのタイプのデータベース スキーマを使用すればよいですか?

特定のトランザクションの位置情報データを保存するアプリケーションを作成しています。単純な緯度/経度を保存する必要がありますか、それともより好ましい標準がありますか? 将来 NoSQL に切り替えられるようにするには、どのデータ型を使用する必要がありますか?