問題タブ [relation]
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.
ruby-on-rails - 空の ActiveRecord リレーションを返すには?
ラムダを持つスコープがあり、引数を取る場合、引数の値に応じて、一致するものがないことを知っているかもしれませんが、それでも空の配列ではなくリレーションを返したい:
私が本当に必要としているのは、「all」の反対である「none」メソッドです。このメソッドは、連鎖可能なリレーションを返しますが、結果としてクエリがショートサーキットされます。
database - テーブルからの異常の削除
私はこのテーブルを持っており、すべての異常を取り除くために再設計することになっています。テーブルではなく、依存関係を示します。
Product と Store がこの関係の鍵です
わかりましたので、テーブルを分割して新しいテーブルを作成することで異常を取り除き、各テーブルに何が含まれるかを述べる必要があります。私はそれを行う方法がわかりません。
php - 国の地域と町のテーブルのMySQL関係
国、地域、町のテーブルを関連付けるための最良の方法を見つけようとしています。
私のウェブサイトでは、ユーザーが町に入るだけでいいようにしたいと思っています。次に、オプションで国と地域を入力します。どちらも入力する必要があるか、まったく入力しない必要があります。
現在、私のテーブルはそのようなものです
tbl>ユーザーはtownID(FK)を持っています
tbl> town has id(PK)townName regionID(FK DEFAULT NULL)
tbl> region has id(PK)regionName countryID(FK NOT NULL)
tbl>国にはid(PK)countryNameがあります
私はおそらくユーザーと町の関係をさらに吐き出すと思いました:
tbl> User has locationID(FK)
tbl> location has id(PK)townID(FK)regionID(FK)countryID(FK)
しかし、それは不要であり、問題をさらに複雑にしていると思いますか?
国データベースはすでに入力されています。ユーザーが入力した町>地域>国の関係についての独自の参照を作成するつもりです。したがって、ユーザーが地域と国のない町に入ると、地域IDのない同じ名前の町がまだない場合は、regionIDのないtbl>townに入力されます。これは、ユーザーが地域と国のIDを入力した町でも同じです。入る前に、町>地域>国の関係がすでに存在していないことを確認するだけです。サイトの開発の後半で、ユーザーが入力した町に基づいて国/地域のAjax提案を提供します。
だから質問に:
データが重複したり、データが上書きされたりする可能性があるなど、これに関する落とし穴を想像することができます。私の希望する方法に合うようにテーブルを構築するためのより良い方法はありますか?
これは前の質問で答えられるかもしれません:しかし、テーブルのPHP処理を減らすために私ができることはありますか。もちろん、PHPステートメントを1つだけ挿入したいのですが、一度に挿入するには注意点が多すぎると思います。
また、ユーザーの町のエントリはnullである可能性があり、地域への外部キー参照が含まれる場合と含まれない場合があるため、それを考慮したビューを作成するのに最適な方法はありますか?
ホストされるので、MySQL関数は使用しません。
説明が必要な場合はお知らせください。続行する前に、これを最初に正しく理解したいので、あなたの助けは非常に貴重です。
class - 双方向および構成関係のUMLクラス図を表示する
イベントとレビューの2つのクラスがあります。
イベントには、インスタンスオブジェクトReviewが含まれています。レビューには、オブジェクトイベントも含まれています。これは、それらの間の双方向の関係を意味します(2つの矢印)。
イベントが削除されると、レビューも削除されます。これは、それらの間の構成関係を意味します(イベントで塗りつぶされたダイヤモンド)。
今私の質問は、2つの矢印と塗りつぶされたひし形を同じ行に一緒に表示するにはどうすればよいですか?
構成や集計を表示するときに、方向の関係を省略すべきかどうか疑問に思っていますか?関連付けを使用すると、方向矢印を問題なく表示できますが、ひし形があると問題が発生します...
linq-to-entities - エンティティ保存へのlinq
次のデータベース構造があります。
私はすでにデータベースに保存Buyer
しています。私は持っていbuyer id
ます。データベースに連絡先を保存するので、バイヤーの連絡先情報をデータベースに保存する必要があります。テーブルにも保存buyercontact
する必要があります。buyercontact
edmx ファイルにテーブルを追加しようとするとBuyerContact
、Visual Studio 2010 で追加できません。
buyercontact
テーブルに情報を保存するにはどうすればよいですか? 助けてください。
彼らは、データベース/edmxで適切な関係が維持されている場合、「連絡先」を洞窟に入れると、購入者の連絡先もデータベースに保存されると言います。インターネットで検索したところ、同様の質問が寄せられていましたが、理解できませんでした。
助けてください。保存するために特別なコードを書く必要がありますかBuyerContact
と一緒に連絡先を保存するためにこのコードを書くとbuyercontact
、エラーが発生します
dbo.Buyer に重複キーを挿入できません
を削除するobjContact.Buyer = buyer;
と、連絡先情報は正常に保存されますが、保存さbuyercontact
れません。今私の問題は、バイヤーに関連付けられた連絡先があるとすぐに、それをBuyerContact
テーブルに保存する必要があることです。
私はすでにここに投稿しましたが、Oは理解できませんでした。CRUD などの一般的なデータベース操作には、一般的な Linq-to-SQL リポジトリを使用しました。
助けてください、ありがとう
mysql - Doctrine 2 での YAML マッピングの例外
phpMyAdmin を使用してデータベースとテーブルを作成しました。私もそこに関係を設定します。
次に、次のコマンドを実行して、Doctrine 2 に YAML ファイルを作成してもらいたいと思いました。
php doctrine orm:convert-mapping --from-database yml /path/to/fixtures/schema
*.dcm.yml ファイルが作成され、問題ないように見えます。したがって、次のようにしてエンティティを作成する必要がありました。
php doctrine orm:generate-entities /path/to/models
ただし、このエラーが発生します。
[Doctrine\ORM\Mapping\MappingException] クラス Callers\dcm は、有効なエンティティまたはマップされたスーパー クラスではありません。
-v フラグを追加すると、次のようになりました。
例外トレース: () at /Users/me/Sites/project/modules/doctrine2/classes/doctrine/Doctrine/ORM/Mapping/MappingException.php:137 Doctrine\ORM\Mapping\MappingException::classIsNotAValidEntityOrMappedSuperClass() at /Users/ me/Sites/project/modules/doctrine2/classes/doctrine/Doctrine/ORM/Mapping/Driver/YamlDriver.php:55 Doctrine\ORM\Mapping\Driver\YamlDriver->loadMetadataForClass() at /Users/me/Sites/project /modules/doctrine2/classes/doctrine/Doctrine/ORM/Mapping/ClassMetadataFactory.php:282 Doctrine\ORM\Mapping\ClassMetadataFactory->loadMetadata() at /Users/me/Sites/project/modules/doctrine2/classes/doctrine/ Doctrine/ORM/Mapping/ClassMetadataFactory.php:176 Doctrine\ORM\Mapping\ClassMetadataFactory->getMetadataFor() at /Users/me/Sites/project/modules/doctrine2/classes/doctrine/Doctrine/ORM/Mapping/ClassMetadataFactory.php:123 Doctrine\ORM\Mapping\ClassMetadataFactory->getAllMetadata() at /Users/me/ Sites/project/modules/doctrine2/classes/doctrine/Doctrine/ORM/Tools/Console/Command/GenerateEntitiesCommand.php:101 Doctrine\ORM\Tools\Console\Command\GenerateEntitiesCommand->execute() at /Users/me/Sites /project/modules/doctrine2/classes/doctrine/Doctrine/Symfony/Component/Console/Command/Command.php:150 Symfony\Component\Console\Command\Command->run() at /Users/me/Sites/project/ modules/doctrine2/classes/doctrine/Doctrine/Symfony/Component/Console/Application.php:187 Symfony\Component\Console\Application->doRun() at /Users/me/Sites/project/modules/doctrine2/classes/doctrine/Doctrine/Symfony/Component/Console/Application.php:113 Symfony\Component\Console\Application->run() at /Users/ me/Sites/project/modules/doctrine2/bin/doctrine.php:40 include() at /Users/me/Sites/project/modules/doctrine2/bin/doctrine:4
Doctrine 2 を Kohana のモジュールとして MySQL リレーションシップと連携させようとしています。Doctrine を機能させることから始めようと思ったのは、それが本当に難しい部分だからです。
作成した YAML ファイルは次のとおりです。
それで、何がうまくいかないのですか?
mysql - フィルタに最適なデータベースシステム
データセットに適用できるフィルターを実装するWebサイトを構築しています。これらのフィルターについて説明させてください。この場合、それは家のあるウェブサイトになります。
最近よく見かけます。合計で約7個のフィルターになります。
今、どのようなデータベースを使うべきかわかりません。約10000のエンティティと毎日の変更があります(データセットの約1%)。私が検討している2つは次のとおりです。
MongoDBオブジェクト指向
まず第一に、私はこれらのいわゆるオブジェクト指向データベースに不慣れです。しかし、私はそれらについていくつかの良い話を聞いたことがあります。それらはスキームが少なく、仕事で非常に速い可能性があります。
MySQLリレーショナルデータベース
私は以前にこの状況でMySQLを使用しましたが、パフォーマンスは許容範囲内でした。データベースをより動的にするEAVモデルを使用しました。整合性を維持するために、リレーションを持つInnoDBエンジンを使用しました。
問題は、複数のフィルターを使用すると、サブクエリが積み重なることです。これは、フィルターを選択したときに可能性の数を計算するときに発生します。
この状況でのパフォーマンスについてどう思いますか、どのdbmsのパフォーマンスが向上しますか?
database - データベースの索引付け: 例
もうすぐ試験があるので、インデックス作成に関する次の質問の解き方を知りたいです。
1.データベースは関係 R(A,B,C) から構成されます。A と B は整数 [0,10 000] (それぞれ 4B) で、C は varchar(20) (20B) です。リレーション R は 10^6 タプルで構成されます。ブロックサイズは 2048 B です。
A) B に B+ ツリー インデックスがあるかどうかを次のクエリに問い合わせた場合、読み取らなければならないブロックの数 (最善と最悪) は次のとおりです。
R から C を選択 A=100 および B=10
B) A にインデックスを付けるのは理にかなっていますか? はいの場合、どのタイプのインデックスが最適ですか?
別の同様の質問は次のとおりです。
2.データベースは、関係 R(A,B,C) から構成されます。A と B は整数 [0,10 000] で、C は varchar(150) です。リレーション R は 10^6 タプルで構成されます。ブロックサイズは 2048 B で、A、B がキーです。
A) 「 SELECT C FROM R WHERE A=4711 」というクエリを実行した場合、最良の場合と最悪の場合で、読み取らなければならないブロックの数は次のとおりです。
- インデックスはありません。
- A と B に B+ ツリー インデックスがあります。
b) A と B に 1 つのインデックスを付けるのではなく、B と A を別々にインデックス化することは理にかなっていますか? どのタイプのインデックスが最適ですか?
編集:
これが私がやったことです:
質問 1 A)
タプルのサイズ = 20+4+4=28 B
2048/28=73 タプル/ブロック切り捨て
10^6/73= リレーション全体で 13 699 ブロック、切り上げ
索引の読み: 4*n+4(n+1)<=2048 B => n=255 切り捨て
B+ツリーの最初のレベル= 255<10^6 いいえ
B+tree の第 2 レベル = 255*256<10^6 いいえ
B+tree の第 3 レベル = 255*256*257>10^6 はい、10^6 タプルは高さ 3 の B+tree に収まります。
Datareadings : A=100 の確率が 1/10001 で、B=10 の確率が同じであると仮定すると、次のようになります。
1/10001*1/10001*10^6 切り上げ = 1 タプル
最悪の場合と最良の場合: 1 タプル = 1 ブロック
次に、3+1 ブロック読み取りがあります
そうですか?
B)のやり方がわかりません。
そして、質問2の答え方が本当にわかりません..助けてください
algorithm - 配列との再帰関係の解決策
メキシコから。真実が尋ねられたり、新しい問題が開かれたりすることはほとんどありません。実際にはフォーラムだけでなく、ネットワークの代わりに機能しない場合でも、トピック x または y に関する多くの情報を見つけることができますが、今回は非常に敗北したと感じています. 私は2年間の再帰を持っています。
- 次の再帰アルゴリズムを定義します。
を。次の n 個の整数を計算します。
最初は、アルゴリズムが合計または数値のセットを返す場合、これでマスターに参照されません。さらに、2番目のケースの原則とアルゴリズム設計は、再帰関係としての表現によって解決するように求められますが...これは、これをRRとして表現する方法ではなく、私が迷っているところです。そして、それは解決することができます
b. 一連の整数の最小値を計算します
他のケースでは、一連の整数の最小値が必要であるとします。それは解決されましたが、RR の修正にそれを渡すという事実は、私を完全にあふれさせました。
どんな助けにも感謝します、ありがとう
magento - カテゴリ<->商品関係
私は、magento 1.4.1.1 でこの問題を抱えています。製品を削除しても、カテゴリ ツリー ビューの製品の数が減りません。Magento が「catalog_category_product」テーブルからエントリを削除していないことがわかりました。
誰もがこれが起こっている理由を考えることができますか? この関数が呼び出されているコアを検索しようとしています (データベースからその行を削除しています) が、見つかりません。
助けていただければ幸いです。