PHP 初心者向け (11)
10. PHP の最大の特徴は、非常に強力なデータベース操作機能です。PHP はさまざまなデータベースをサポートします。
PHP を使用すると、データベースに簡単に接続し、データをリクエストして Web サイトに表示したり、データベース内のデータを変更したりすることもできます。ここでは主にインターネット上でPHPでよく利用されているMySQLデータベースを例に、関連するMySQLデータベースの操作機能やデータベースの基本操作を紹介します。
MySQL データベースには、データベースに接続するために使用する関数が 2 つあります:
integer mysql_connect(string host, string user, string password);
integer mysql_pconnect(string host, string user, string password);
mysql_connect 関数と mysql_pconnect 関数は両方とも、指定したホスト上の MySQL データベースへの接続です。データベースが別のポートにある場合は、ホスト名の後にコロンとポート番号を追加できます。関数のパラメータはデフォルトで空白のままにすることもできます。パラメータが入力されていない場合、デフォルトのホスト名は「localhost」、ユーザー名はデータベース管理者、デフォルト値は「root」です。空の。データベースに正常に接続した後、両方の関数は接続番号を返すことができ、接続が失敗した場合は false 値が返されます。次のステートメントを見てみましょう:
$db=mysql_connect("localhost","user","password");
コメント:
$db=mysql_connect("localhost","user","password"); mysql_connect() のパラメータとしてホスト名、ユーザー名、パスワードを含む mysql リンクパラメータを使用し、戻り値を $db として取得します。 , 次のステートメントでは、mysql データベースに接続するための接続番号として変数 $db を使用できます。
mysql_select_db("mydb",$db); PHP プログラムを mydb データベースにリンクし、プログラムとデータベース間のリンクが完了します。
10.1 シンプルなデータベースゲストブック
データベースリンクが完了したら、データベースに対して一連の操作を実行できます。以下は、単純なデータベース ゲストブック プログラム (guestbook.php3) です。
マシン上の MySQL データベースと、MYSQL データベースを管理するツール Ppmyadmin_2 がインストールされており、正常に動作できると仮定します。
最初に行う必要があるのは、メッセージ データベースを作成することです。名前は mydb であると仮定します。
1. ブラウザを起動し、Phmyadmin_2 の管理 WEB インターフェイスを開きます。
2. 「新しいデータベースの作成」テキストボックスにデータベース名 mydb を入力し、作成ボタンを押します。
次に、メッセージ データベースの下にデータ テーブルを作成する必要があります。名前は guestbook であると仮定します。
このデータテーブルを作成するコマンドは次のとおりです:
CREATE TABLE guestbook (ID INT NOT NULL AUTO_INCREMENT, name CHAR(250), email CHAR(250), job CHAR(250), comments BLOB, PRIMARY KEY(ID ) );
最後に、以下のゲストブック プログラムをマシンの書き込み可能なディレクトリにダウンロードし、guestbook.php3 ファイルとして保存します。とても簡単です。すでに独自のゲストブックをお持ちです。
10.2 ゲストブック プログラム (guestbook.php3):
/* $host : MySQL ホスト、通常は 'localhost' */
/* $user : MYSQL ユーザー名 */
/* $パスワード : MySQL のパスワード */
/* $database : MySQL データベース */
/* $table : MySQL テーブル */
/* $page_title : ゲストブックのページのタイトル */
/ * $admin_mail : 新しいエントリを送信する管理者の電子メール アドレス */
/* $admin_name : 管理者の名前 */
/* $html_mail : メール エージェントが HTML メールを処理できる場合は「はい」、それ以外の場合は「はい」と答えます。いいえ */
$host = "";
$database = "mydb";
$page_title = "pert ゲストブック";
$admin_mail = "pert@21cn.com";
$admin_name = "ウェブマスター";
$html_mail = "いいえ";
?>
="-2">
/* データベースに接続します */
mysql_pconnect("$host","$user","$password") または die("SQL に接続できません-server");
mysql_select_db("$database");
/* action=view : データベースからデータを取得し、ユーザーに表示します */
if($action == "view") {
/ * データを表示する関数 */
function search_it($name) {
/* いくつかの変数 */
global $offset,$total,$lpp,$dir;
global $table,$html_mail,$admin_name, $ admin_mail;
/* データベースから取得するデータを選択します */
$query = "$table から名前、メールアドレス、仕事、コメントを選択";
$result = mysql_query($query);
$total= mysql_numrows($result);
print "
if ($total== 0) {
print "
"; }
elseif ($total> 0) {
/* デフォルト */
$counter=0;
if ($dir=="") $dir="次へ";
$lpp=5;
if ($offset==0) $offset=0;
if ($dir=="次") {
if ($total > $lpp) {
$counter=$offset;
$オフセット+=$lpp;
$num=$offset;
if ($num > $total) {
$num=$total; } }
else {
$num=$total; } }
elseif ($dir=="前") {
if ($total > $lpp) {
$offset-=$lpp;
if ($offset $offset=0;
$counter=$offset-$lpp;
if ($counter $counter=0;
$num=$counter+$lpp; }
else {
$num=$total; } }
while ($counter $j=0;
$j=$counter + 1;
/* データを実際に取得します */
$i1=mysql_result($result,$counter,"name");
$i2=mysql_result($result,$counter,"メール");
$i3=mysql_result($result,$counter,"ジョブ");
$i4=mysql_result($result,$counter,"コメント");
$i4 = ストリップスラッシュ ("$i4");
/* 良いレイアウトで印刷します */
print "
print "
n"; 「 n」を印刷します; print " 名前: $i1n"; print " email:$i2n"; print " ジョブ: $i3n"; print " コメント:n"; print " $i4n"; print " |
print "
$カウンター++;
}
}
mysql_close();
}
/* 関数を実行します */
search_it($name);
/* [次へ] または [前へ] ボタンを配置する必要があるかどうかを確認します */
if ($total > $lpp) {
echo("");
}
}
/* action=add : ユーザーがデータベースに追加するデータを入力できるフォームを表示します */
elseif($action == "add") { ?>
<テーブル幅="460" 整列="センター" ヴァライン="上">
请您充填写留言

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック









ルートとしてMySQLにログインできない主な理由は、許可の問題、構成ファイルエラー、一貫性のないパスワード、ソケットファイルの問題、またはファイアウォール傍受です。解決策には、構成ファイルのBind-Addressパラメーターが正しく構成されているかどうかを確認します。ルートユーザー許可が変更されているか削除されてリセットされているかを確認します。ケースや特殊文字を含むパスワードが正確であることを確認します。ソケットファイルの許可設定とパスを確認します。ファイアウォールがMySQLサーバーへの接続をブロックすることを確認します。

MySQLデータベースでは、ユーザーとデータベースの関係は、アクセス許可と表によって定義されます。ユーザーには、データベースにアクセスするためのユーザー名とパスワードがあります。許可は助成金コマンドを通じて付与され、テーブルはCreate Tableコマンドによって作成されます。ユーザーとデータベースの関係を確立するには、データベースを作成し、ユーザーを作成してから許可を付与する必要があります。

MySQLがテーブル構造を変更すると、メタデータロックが通常使用され、テーブルがロックされる可能性があります。ロックの影響を減らすために、次の測定値をとることができます。1。オンラインDDLでテーブルを使用できます。 2。バッチで複雑な変更を実行します。 3.小規模またはオフピーク期間中に操作します。 4. PT-OSCツールを使用して、より細かい制御を実現します。

データ統合の簡素化:AmazonrdsmysqlとRedshiftのゼロETL統合効率的なデータ統合は、データ駆動型組織の中心にあります。従来のETL(抽出、変換、負荷)プロセスは、特にデータベース(AmazonrdsmysQlなど)をデータウェアハウス(Redshiftなど)と統合する場合、複雑で時間がかかります。ただし、AWSは、この状況を完全に変えたゼロETL統合ソリューションを提供し、RDSMYSQLからRedshiftへのデータ移行のための簡略化されたほぼリアルタイムソリューションを提供します。この記事では、RDSMysQl Zero ETLのRedshiftとの統合に飛び込み、それがどのように機能するか、それがデータエンジニアと開発者にもたらす利点を説明します。

1.正しいインデックスを使用して、データの量を削減してデータ検索をスピードアップしました。テーブルの列を複数回検索する場合は、その列のインデックスを作成します。あなたまたはあなたのアプリが基準に従って複数の列からのデータが必要な場合、複合インデックス2を作成します2。選択した列のみを避けます。必要な列のすべてを選択すると、より多くのサーバーメモリを使用する場合にのみサーバーが遅くなり、たとえばテーブルにはcreated_atやupdated_atやupdated_atなどの列が含まれます。

MySQLには、無料のコミュニティバージョンと有料エンタープライズバージョンがあります。コミュニティバージョンは無料で使用および変更できますが、サポートは制限されており、安定性要件が低く、技術的な能力が強いアプリケーションに適しています。 Enterprise Editionは、安定した信頼性の高い高性能データベースを必要とするアプリケーションに対する包括的な商業サポートを提供し、サポートの支払いを喜んでいます。バージョンを選択する際に考慮される要因には、アプリケーションの重要性、予算編成、技術スキルが含まれます。完璧なオプションはなく、最も適切なオプションのみであり、特定の状況に応じて慎重に選択する必要があります。

MySQLはAndroidで直接実行できませんが、次の方法を使用して間接的に実装できます。Androidシステムに構築されたLightWeight Database SQLiteを使用して、別のサーバーを必要とせず、モバイルデバイスアプリケーションに非常に適したリソース使用量が少ない。 MySQLサーバーにリモートで接続し、データの読み取りと書き込みのためにネットワークを介してリモートサーバー上のMySQLデータベースに接続しますが、強力なネットワーク依存関係、セキュリティの問題、サーバーコストなどの短所があります。

MySQLデータベースパフォーマンス最適化ガイドリソース集約型アプリケーションでは、MySQLデータベースが重要な役割を果たし、大規模なトランザクションの管理を担当しています。ただし、アプリケーションのスケールが拡大すると、データベースパフォーマンスのボトルネックが制約になることがよくあります。この記事では、一連の効果的なMySQLパフォーマンス最適化戦略を検討して、アプリケーションが高負荷の下で効率的で応答性の高いままであることを保証します。実際のケースを組み合わせて、インデックス作成、クエリ最適化、データベース設計、キャッシュなどの詳細な主要なテクノロジーを説明します。 1.データベースアーキテクチャの設計と最適化されたデータベースアーキテクチャは、MySQLパフォーマンスの最適化の基礎です。いくつかのコア原則は次のとおりです。適切なデータ型を選択し、ニーズを満たす最小のデータ型を選択すると、ストレージスペースを節約するだけでなく、データ処理速度を向上させることもできます。
