ホームページ >バックエンド開発 >PHPチュートリアル >laravelクエリデータベースで大文字と小文字の区別を実装するにはどうすればよいですか?

laravelクエリデータベースで大文字と小文字の区別を実装するにはどうすればよいですか?

WBOY
WBOYオリジナル
2016-07-06 13:53:052057ブラウズ

「user」テーブルには「account」というフィールドがあります。このフィールドをクエリするには、laravel ORM メソッドを使用する必要があります。

例: user テーブルには 3 つのデータがあります。account フィールドの値は、abc、AbC、ABC です。ここで、「User::where("account","ABC")->」を使用します。 get()' でクエリを実行すると、3 つのデータがすべて取得されますが、アカウント値 ABC を持つデータのみを取得したいのですが、これを実現するにはどうすればよいでしょうか。 ?データベースはmysql

です

返信内容:

「user」テーブルには「account」というフィールドがあります。このフィールドをクエリするには、laravel ORM メソッドを使用する必要があります。

例: user テーブルには 3 つのデータがあります。account フィールドの値は、abc、AbC、ABC です。ここで、「User::where("account","ABC")->」を使用します。 get()' でクエリを実行すると、3 つのデータがすべて取得されますが、アカウント値 ABC を持つデータのみを取得したいのですが、これを実現するにはどうすればよいでしょうか。 ?データベースはmysql

です

MySQL テーブルの対応するフィールドとバイナリ

http://cevin.net/archives/%E8%AE%A9mysql%E6%9F%A5%E8%AF%A2%E5%8C%BA%E5%88%86 %E5 %A4%A7%E5%B0%8F%E5%86%99.html


@cevin は、クエリ時にバイナリ型を区別して直接使用する方法について話しています。個人的にはそれは適切ではないと思います。特に問題となるのは、テーブルの作成時に制約を設計せず、クエリ時にバイナリ比較を強制する場合です。これにより、コード内で多くの判断が行われ、バイパスされる可能性があります。バイナリフィールドを直接使用する場合、mysql はそれらを文字として扱いません。問題がある可能性があります。私の解決策を以下に示します。

私たちは一般的にこのようなテーブル作成ステートメントを使用します。その照合は ci (大文字と小文字を区別しない) として宣言されています

リーリー

大文字と小文字を区別するには、次のように記述するだけです。

リーリー

laravelとは関係ありません。 MySQLテーブル設定の問題

php7オンラインコンパイルと実行

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。