わかりました基本的に私たちはデータベースに接続することを理解しています
$conn=mysql_connect($dbhost,$dbuser,$dbpass);
を使用して目的のデータベースを選択します。
mysql_select_db("dbname",$conn)
ここまでは順調ですが、データベースの選択と接続の違いは何ですか?それとも、データベース SERVER に接続してから、利用可能なすべてのデータベースの中から目的の DB を選択するのですか?事前に感謝します。
関数のサポートはなくなりました。mysql_*関数は公式に非推奨になり、メンテナンスされなくなり、将来的に削除される予定です。将来のプロジェクトの機能を確実にするために、PDOまたはMySQLiでコードを更新する必要があります。
違いは、データベースサーバーに接続しただけでは、原因に使用するデータベースを選択するまで、テーブルを作成したり、テーブルを選択したりできないことです。
これmysqliも簡単です:
$db = new mysqli($host,$user,$pass,$dbselect);
if($db->connect_error)
die('Connect Error (' . mysqli_connect_errno() . ') '. mysqli_connect_error());
mysql_*関数はもはや維持されておらず、公式に廃止されています。赤いボックスが見えますか? プリペアド ステートメントについて学び、 PDOまたはMySQLiを使用してください。この記事は、どちらを使用するかを決めるのに役立ちます。
mysql_query()指定された link_identifier に関連付けられているサーバー上の現在アクティブなデータベースに一意のクエリを送信します (複数のクエリはサポートされていません)。
のドキュメントmysql_query
mysql_connect()MySQL サーバーへの接続を開くか再利用します。
のドキュメントmysql_connect
はい、接続するとは、MySQL のそのインスタンスに対してユーザーとパスワードを認証することを意味します。その後、表示権限のあるすべてのデータベースにアクセスできます。
データベースのみを選択すると、データベース名を修飾せずにテーブルを参照すると、そのデータベースがデフォルトとして使用されます。ただし、任意のデータベースの任意のテーブルにクエリを実行できますdatabasename.tablename。
PS: 他の人がコメントしているように、mysql_* 関数は避けるべきです。これらの関数は最近非推奨になったためです。PHP は、より多くの機能を持ち、オブジェクト指向の方法で使用できる、MySQL への他の 2 つのインターフェースを提供します。
最初にデータベース ホストに接続してから、DB を選択する必要があります。それ以外の場合、データベース ホストに接続していない場合にデータベースを選択する意味は何ですか?
そして、アドバイスですが、mysql_*関数はもう使用しないでください。代わりに PDO を使用してください。
mysql_connect現在のmysql接続で使用するデータベースを選択しながら、データベースではなくデータベースサーバーに接続しますmysql_select_db
MySQL はサーバーです。データベースに「接続」しているだけではありません。関係する他の層があります。最初にサーバーに接続してから、データベースを選択します。