5

3 つのテーブル サンプルがあります。mysqlデータベースにデータを保存するために使用しました

+--------------------------+
| Table-1                  |
+--------------------------+
| Sl.No | Name | City      |
+-------+------+-----------+
|  1    | Carl | Australia |
+-------+------+-----------+

+--------------------------+
| Table-1                  |
+--------------------------+
| Sl.No | Name | City      |
+-------+------+-----------+
|  1    | carl | australia |
+-------+------+-----------+

+--------------------------+
| Table-1                  |
+--------------------------+
| Sl.No | Name | City      |
+-------+------+-----------+
|  1    | CARL | AUSTRALIA |
+-------+------+-----------+
  • 明らかに、各テーブルに 1 行のデータが表示されます
  • データの性質は同じです

私が行ったことは、大文字と小文字の異なる大文字を使用したことです。

データベースに格納されているデータは大文字と小文字を区別しますか?

4

2 に答える 2

6

データは生データとして保存されます。ただし、特定の形式でデータを取得したい場合は、フォーマットすることができます。都合に合わせてデータを挿入できますが、内部的には同じように解釈されます。つまり、ABC is same as abc and aBc

デフォルトでは、MySQL クエリは大文字と小文字を区別しません。

MySQL サイトから

基盤となるオペレーティング システムの大文字と小文字の区別は、データベースとテーブル名の大文字と小文字の区別に影響します。これは、Windows ではデータベース名とテーブル名の大文字と小文字が区別されず、ほとんどの種類の Unix では大文字と小文字が区別されることを意味します。注目すべき例外の 1 つが Mac OS X です。Mac OS X は Unix ベースですが、大文字と小文字を区別しないデフォルトのファイル システム タイプ (HFS+) を使用します。ただし、Mac OS X は UFS ボリュームもサポートしており、Unix と同様に大文字と小文字が区別されます。

補足:-

データベース内では、すべてのデータがバイナリ形式で保存されます。ユーザーにデータを表示する方法を解釈するためにコンピューターが使用するさまざまなデータ型を使用できますが、それは単なるマスクです。

于 2013-10-03T17:10:06.200 に答える
5

はい、データベースは送信方法でデータを保存します。

あなたが言うなら:

INSERT INTO MyTable (LowerCase, UpperCase) VALUES ("abcd", "ABCD");

挿入されます:

LowerCase | UpperCase
abcd      | ABCD

もしあなたがそうするなら

INSERT INTO MyTable (LowerCase, UpperCase) VALUES ("AbCd", "aBcD");

挿入されます:

LowerCase | UpperCase
AbCd      | aBcD

入力を必要なケースにサニタイズするか、入力したままにするかはあなた次第です。

しかし、私がするとき

SELECT * FROM MyTable WHERE LowerCase="abcd";

両方のエントリが返されます。

于 2013-10-03T17:11:43.660 に答える