問題タブ [unique-index]
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.
mysql - MySQL列の組み合わせを一意にする
サイト上の画像についてユーザーが行ったコメントを保存するテーブルがあります。このテーブルは、主キーであるrow_id、image_id、user_id、およびコメントの4つの列で構成されています。私がやりたいのは、ユーザーが画像ごとに1つのコメントしか残せないようにすることです。2つの列に一意のインデックスを作成するだけですか?
アイデアは、次のクエリを機能させることです。
落とし穴(gotme?)は、テーブルが非常に大きくなることが予想されるため、テーブルがinnoDBであるということです。これは、主キーが存在するにもかかわらず機能するアプローチですか?
mysql - 複数の一意の列、ただし一意の組み合わせのみ
MySQL の一意のインデックスで問題が発生しました。私がやりたいことは、次のようなものです。
同じユーザー ID の複数のインスタンスとグループ ID の複数のインスタンスが存在する可能性がありますが、2 つの一意の組み合わせのみが許可されます。これをON DUPLICATE KEY UPDATE
MySQL クエリで使用していますが、テーブルのインデックスに対して何をする必要があるのか疑問に思っています。現在、私はこれを持っています:
しかし... a)これで十分ですか、b)探しているものを得るために正しくやっていますか?
助けてくれてありがとう
ジェームズ
mysql - Mysql 5.1.xでUNIQUEインデックスの大文字と小文字を区別しないようにする方法はありますか?
もしそうなら-この表で何を変更する必要がありますか?
mysql - MySQL の一意の複合制約が機能しない
次のような一意のインデックスを作成しました。
重複したアイテムを追加することはできますが、なぜ機能しないのですか?
ノート:
テーブル自体にもここに含まれていない列がいくつかあり、warehouse_id は外部キーですが、これらは問題にならないはずですよね?
ありがとう!
@cularis: 正常に追加された複製の例を次に示します。
編集:
必要に応じてさらに情報を追加します。
sql-server - SqlExceptionメッセージから一意のインデックス名を取得するスマートな方法は?
SqlException
メッセージから一意のインデックス名を取得するスマート/最良の方法はありますか? 次のように:
一意のインデックス 'IX_Partner_SerialId' を持つオブジェクト 'partners.Partner' に重複するキー行を挿入できません。ステートメントは終了されました。
IX_Partner_SerialId
例外メッセージ文字列を操作せずに取得する必要がありますか? 例外オブジェクトの変数のようなものですか?
nhibernate - NHibernateはParentClassのChildCollectionを削除して追加します
次の問題があります。
子オブジェクトのコレクションを持つ親クラスがあります。
クラスは、列tblChild.colNameが一意のインデックスを持つデータベースのnhibernateでマップされます。
私の問題:次のコードは、一意のインデックスのために例外をスローします:
例外の理由は、NHibernateが最初にchild4を挿入し、次にchild1を削除するためです。なぜNHibernateはそうするのですか?誰かが説明し、私がこの問題を解決するのを手伝ってくれる?
sql - 既存のデータベーステーブルの一意のインデックス
SQL Server 2008のデータベーステーブルの1つに新しい一意のインデックスを追加しようとしています。これは既存のテーブルであり、一意のインデックスが必要な列にはすでにいくつかの重複する値があります。
その列に一意のインデックスを設定できますか?もしそうなら、どのように?
php - PHP で文字列から一意の整数を作成する
アイテムを返す API を使用して、それらのアイテムを MySQL データベースに保存しています。ただし、API はアイテムごとに一意の ID を返さないため、重複をチェックしない限り、同じアイテムを 2 回保存するリスクがあります。
重複を防ぐ最も効率的な方法は、MySQL で一意のインデックスを作成することだと思います。ただし、MySQL は文字列の一意のインデックスを持つことができないため、文字列の 1 つ (おそらく URL) を整数に変換して一意のインデックス列に格納する必要があります。私はその仮定で正しいですか?PHPでこれを達成するにはどうすればよいですか?
ありがとうございました。
foreign-keys - Symfony2 OneToOneリレーションシップは、一意のインデックスまたは外部キーのいずれかになりますか?
私はSymfony2の実体関連の最初の一歩を踏み出しました。それぞれに1つのメーターと1つのモニターがあるエンティティインストールがあります。
これは、私が次のように定義した一方向の関係に変換されます。
各モニターは、1つのインストールにのみ割り当てることができます。各メーターは、複数の設備に割り当てることができます。
データベースを更新すると(app / console doctrine:schema:update --force)、2つの結果があります。
モニターの場合:
すべてが正常に行われると、スキーマは接頭辞「UNIQ_」が付いたキー名で更新されます。
メーターの場合:次のエラーが発生します
このエラーが発生した後のテーブル構造を見ると、前述の制約は見つかりませんが、FK_43D26968860BE41D、つまり同じですが、接頭辞が「FK」であることがわかります。
インストールテーブルに、次のリストがあります。
つまり、1つは「Unique = Yes」と言い、もう1つは「Unique=No」と言います。
私の質問にたどり着くには:
それがUNIQインデックスであるかFKインデックスであるかをどのように判断できますか?Doctrineは、現在、各monitoridがインストールテーブルで一意であることを確認したと思いますが、各meteridはインストールテーブルで数回発生します。
したがって、最初はUNIQを使用し、後者はFKを使用しました。しかし、私はこれをどうにかして制御できますか?
mysql - mysql utf8 エンコーディングと一意のキー
ユーザーテーブル (多くのサイトからの多くのユーザー) からデータをインポートしています:
myisam default collation latin1_swedish
....
そのデータをinnodb table utf8_general
組み合わせに一意のキーを配置しましたusername,site_id
が、これは同じサイトの 2 人のユーザーで失敗しています:
私が実行した場合:
utf8エンコーディングを使用してターゲットデータベースに直接、'yep'
.
これを解決するためのヒントは大歓迎です。私は、utf8 がこれらを異なる文字として扱うという印象を持っていましたが、そうではないようです。