ホームページ  >  記事  >  バックエンド開発  >  PHP_PHP チュートリアルで MySQL データベースを操作するときに注意すべきいくつかの問題

PHP_PHP チュートリアルで MySQL データベースを操作するときに注意すべきいくつかの問題

WBOY
WBOYオリジナル
2016-07-13 17:00:46676ブラウズ

1. セミコロンの例外

MySQL の場合、最初に覚えておく必要があるのは、コマンドの各行がセミコロン (;) で終わるということですが、絶対的なものはなく、ここでも同じです。 MySQL は PHP コードに挿入されます。たとえば、次のセミコロンを省略することをお勧めします。
mysql_query ("INSERT INTO tablename (first_name, last_name)
VALUES ('$first_name', '$last_name')
" );これは、PHP もセミコロンで行を終了するためです。余分なセミコロンは PHP の構文アナライザーを混乱させる場合があるため、省略した方がよいでしょう。この場合、セミコロンは省略されていますが、MySQL コマンドの実行時に PHP が自動的に追加します。

セミコロンを追加する必要がない状況もあります。必要なフィールドを通常の水平配置ではなく垂直配置で表示したい場合は、G を使用して SQL ステートメントの行を終了できます。この場合、セミコロンは必要ありません。例:
SELECT * FROM PENPALS WHERE USER_ID = 1G
2. TEXT、DATE、SET データ型
MySQL データテーブルのフィールドにはデータ型が定義されている必要があります。約 25 のオプションがありますが、そのほとんどは簡単で、これ以上の説明は必要ありません。しかし、言及しなければならないことがいくつかあります。

TEXT はデータ型ではありませんが、書籍によってはそう記載されている場合があります。実際には「LONG VARCHAR」または「MEDIUMTEXT」である必要があります。

DATE データ型の形式は YYYY-MM-DD で、例: 1999-12-08 です。 date 関数を使用すると、現在のシステム時刻を次の形式で簡単に取得できます:
date("Y-m-d")
また、DATA データ型間で減算して、時間の差を日数で取得できます:
$age = ($ current_date - $birthdate);
Set SET は便利なデータ型です。SET は複数の値を保存できるのに対し、ENUM は 1 つの値しか保存できない点が異なります。さらに、SET タイプは最大 64 個の事前定義値のみを持つことができますが、ENUM タイプは最大 65,535 個の事前定義値を処理できます。 64 を超える値を含むコレクションが必要な場合はどうすればよいでしょうか?現時点では、この問題を一緒に解決するには、複数のコレクションを定義する必要があります。

3. ワイルドカード文字
SQL には「*」と「%」の 2 種類のワイルドカード文字があります。さまざまな状況で使用されます。例: データベースのすべての内容を表示したい場合は、次のようにクエリできます:
SELECT * FROM dbname WHERE USER_ID LIKE '%';
​​ここでは、両方のワイルドカードが使用されています。これらは同じことを意味し、どちらも任意の文字列に一致しますが、異なるコンテキストで使用されます。 「 * 」はフィールド名と一致するために使用され、「 % 」はフィールド値と一致するために使用されます。もう 1 つ気づきにくいのは、ワイルドカード文字「%」を LIKE キーワードと一緒に使用する必要があることです。

http://www.bkjia.com/PHPjc/631223.htmlwww.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/631223.html技術記事 1. セミコロンの例外 MySQL の場合、最初に覚えておかなければならないのは、そのコマンドの各行がセミコロン (;) で終わるということですが... 絶対的なものはなく、それはここでも同じです...
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。