ホームページ > バックエンド開発 > PHPチュートリアル > データベースSQL作成時のデータベース名の定期的なマッチングについて質問させていただきます。

データベースSQL作成時のデータベース名の定期的なマッチングについて質問させていただきます。

WBOY
リリース: 2016-06-13 13:34:19
オリジナル
830 人が閲覧しました

データベースを作成する SQL のデータベース名を一致させるにはどうすればよいですか?
データベースを作成できる SQL の名前が一致する必要がある限り、あらゆる状況を考慮する必要があります。
名前には「」が含まれていない、スペースが含まれていない、キーワードが変更されていないなどがあります...



-----解決策-- ------------------
/creates+databases+(w+)/is

名前には「」やスペースを含めることはできません。 🎜>チャンスはない
<br>------解決策---------<font color="#e78608"></font><br>PHP コード

<br>------解決策---------<font color="#e78608"></font><br>PHP コード
ログイン後にコピー
<br>------解決策-----<font color="#e78608"></font>名前に使用できる記号は何ですか?たとえば、あなたが言ったように、() [w@#`()]<br>` がデータベース名の両側に表示されるか、同時に表示されないことを確認するだけです。 ` の数を制御することはできません。
<br><br>------解決策---------<font color="#e78608"></font><br>
ログイン後にコピー
話し合う つまり、「」が使用されている限り、名前に任意の記号を含めることができます。

` を使用しない場合、名前には文字と数字のみを使用でき、DATABASE テキストと区切るために前にスペースを追加する必要があります。


------解決策---------記号の文字列を使用できます [:punct: ] は句読点を表し、[:punct:] は句読点を表します。同様のものには [:alnum:] [:space:]... それぞれがいくつかの種類の文字列を表します
は次のように変更できます

PHP コード
preg_match_all('/CREATEs+DATABASEs*((([`'"])?)([w[:punct:]]+)2s?)/is',$sql,$matchs);
<br>------解決策------------------<font color="#e78608"></font>
<br><br>PHP コード
ログイン後にコピー
を試してください $databases = <<
<br>------解決策--------<font color="#e78608"></font>上記は機能しません、「中間」 ' は偶数である必要があります。 。これはさらに厄介です。
<br><br>------解決策---------<font color="#e78608"></font><br>
ログイン後にコピー
話し合う

そうです。 「真ん中」は偶数桁が一致すれば問題ありません。奇数の場合はSQLに問題があることを意味するため考慮する必要はありません。

上記の `aaa````bbb` は一致しません。

引用:

上記は機能しません。「中央」は偶数でなければなりません。 。これはさらに厄介です。

関連ラベル:
ソース:php.cn
前の記事:目まぐるしいサイクルの解決策 次の記事:MYSQL での特殊文字の扱い
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
最新の問題
関連トピック
詳細>
人気のおすすめ
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート