MySQL データ テーブルのフィールドにはデータ型が定義されている必要があります。約 25 のオプションがありますが、そのほとんどは簡単で、これ以上の説明は必要ありません。しかし、言及しなければならないことがいくつかあります。
TEXT
TEXT はデータ型ではありませんが、書籍によってはそう記載されている場合があります。実際には「LONG VARCHAR」または「MEDIUMTEXT」である必要があります。
DATE
DATE データ型の形式は YYYY-MM-DD です (例: 1999-12-08)。 date 関数を使用すると、現在のシステム時刻を次の形式で簡単に取得できます:
date("Y-m-d")
また、DATA データ型間で減算して日数の差を取得できます:
$age = ($ current_date - $birthdate);
SET
Set SET は列挙型 ENUM に似ていますが、SET は複数の値を保存でき、ENUM は 1 つの値しか保存できません。さらに、SET タイプは最大 64 個の事前定義値のみを持つことができますが、ENUM タイプは最大 65,535 個の事前定義値を処理できます。 64 を超える値を含むコレクションが必要な場合はどうすればよいでしょうか?現時点では、この問題を一緒に解決するには、複数のコレクションを定義する必要があります。
ワイルドカード
SQL には、「*」と「%」の 2 種類のワイルドカード文字があります。さまざまな状況で使用されます。例: データベースのすべての内容を表示したい場合は、次のようにクエリできます:
SELECT * FROM dbname
WHERE USER_ID LIKE '%';
ここでは、両方のワイルドカードが使用されています。これらは同じことを意味し、どちらも任意の文字列に一致しますが、異なるコンテキストで使用されます。 「 * 」はフィールド名と一致するために使用され、「 % 」はフィールド値と一致するために使用されます。もう 1 つ気づきにくいのは、ワイルドカード文字「%」を LIKE キーワードと一緒に使用する必要があることです。
アンダースコア「_」というワイルドカード文字もあります。これは上記とは異なる意味を持ち、任意の 1 文字と一致するために使用されます。
(T115)