PHP operation MySQL function detailed, MySQL and PHP interactive function _php Foundation

Source: Internet
Author: User
Tags garbage collection numeric mixed rowcount
1. Establish and close the connection
1) mysql_connect ()
Resource mysql_connect ([string hostname [:p ort][:/path/to/socket][,string username] [, string password]])
All parameters are optional
Example:
@mysql_connect ("localhost", "User", "password")
Or Die ("could not connect to MySQL server!");
Note that the @ symbol indicates any error message that is preventing a failed attempt, and the user will see the error message specified in die ().
Note that when you connect to multiple MySQL, you must specify the link ID for each connection as follows:
$link 1 = @mysql_connect ("Server1″," user "," password ")
Or Die ("could not connect to MySQL server!");
$link 2 = @mysql_connect ("Server2″," user "," password ")
Or Die ("could not connect to MySQL server!");
2) Mysql_pconnect ()
Resource Mysql_pconnect ([string hostname [:p ort][:/path/to/socket][,string username] [, string password]])
Unlike mysql_connect (), the existing links are first found and are not created until they are present.
Note that you do not need to show the close connection (Mysql_close ()) because the connection will be placed in the pool, so it is called a persistent connection.
3) Mysql_close ()
Boolean mysql_close ([Resource link_id])
Closing the connection is not necessary because it can be handled by MySQL garbage collection.
If link_id is not specified, close the most recent link.
2. Select Database
mysql_select_db ()
Boolean mysql_select_db (String db_name [, Resource link_id])
3. Query MySQL
1) mysql_query ()
Resource mysql_query (string query [, Resource link_id])
Responsible for executing query.
2) Mysql_db_query ()
Resource Mysql_db_query (string database, string query [, Resource link_id])
Equivalent to mysql_select_db () + mysql_query (), can be clearly seen from the parameters.
4. Getting and displaying data
1) mysql_result ()
Mixed mysql_result (resource result_set, int row [, mixed field])
Gets the data for a field from the specified row in Result_set. Simple but inefficient.
Example:
Copy Code code as follows:

$link 1 = @mysql_connect ("Server1″, WebUser", "password")
Or Die ("could not connect to MySQL server!");
@mysql_select_db (' company ') or die ("could not select database!");
$query = "SELECT ID, name from product order by name";
$result = mysql_query ($query);
$id = mysql_result ($result, 0, "id");
$name = mysql_result ($result, 0, "name");
Mysql_close ();

Note that the above code is just the field value of the first data in the output set, and that if you want to output all the records, you need to recycle.
Copy Code code as follows:

...
for ($i = 0; $i <= mysql_num_rows ($result); $i + +)
{
$id = mysql_result ($result, 0, "id");
$name = mysql_result ($result, 0, "name");
echo "Product: $name ($id)";
}
...

Note that if the query field name is an alias, the alias is used in Mysql_result.
2) mysql_fetch_row ()
Array mysql_fetch_row (Resource result_set)
Gets the entire row from the Result_set and puts the data into the array.
For example (note the ingenious Fit with list):
Copy Code code as follows:

...
$query = "SELECT ID, name from product order by name";
$result = mysql_query ($query);
while (list ($id, $name) = Mysql_fetch_row ($result)) {
echo "Product: $name ($id)";
}
...

3) mysql_fetch_array ()
Array mysql_fetch_array (Resource result_set [, int result_type])
Enhanced version of Mysql_fetch_row ().
Gets each row of the Result_set as an associative array or an array of/and numeric indices.
Two arrays are obtained by default, and Result_type can be set:
MYSQL_ASSOC: Return associative array, field name => field value
Mysql_num: Returns an array of numeric indices.
Mysql_both: Gets two arrays. Therefore, each field can be referenced by index offset or by field name.
Example:
Copy Code code as follows:

...
$query = "SELECT ID, name from product order by name";
$result = mysql_query ($query);
while ($row = Mysql_fetch_array ($result, Mysql_both)) {
$name = $row [' name '];//or $name = $row [1];
$name = $row [' id '];//or $name = $row [0];
echo "Product: $name ($id)";
}
...

4) Mysql_fetch_assoc ()
Array Mysql_fetch_assoc (Resource result_set)
Equivalent to Mysql_fetch_array ($result, MYSQL_ASSOC)
5) Mysql_fetch_object ()
Object Mysql_fetch_object (Resource Result_set)
As with the mysql_fetch_array () feature, the return is not an array, but an object.
Example:
Copy Code code as follows:

...
$query = "SELECT ID, name from product order by name";
$result = mysql_query ($query);
while ($row = Mysql_fetch_object ($result)) {
$name = $row->name;
$name = $row->id;
echo "Product: $name ($id)";
}
...

5. Selected records and affected records
1) mysql_num_rows ()
int mysql_num_rows (Resource result_set)
Returns the number of rows in the Result_set.
Note that mysql_num_rows () is only valid in determining the number of records obtained by a SELECT statement query, and you need to use Mysql_affected_rows () if you want to get the number of records affected by the Insert/updata/delete query.
2) Mysql_affected_rows ()
int Mysql_affected_rows ([resource link_id])
Get the number of records affected by a insert/updata/delete query
Note that you do not need to enter parameters, and the default is to use the most recent results of a recently established database connection. You can use the optional parameter link_id to select a database connection.
6. Get the database and table information
1) Mysql_list_dbs ()
Resource Mysql_list_dbs ([Resource link_id])
Gets all the database names on the server.
Example:
Copy Code code as follows:

mysql_connect ("localhost", "name", "pwd");
$dbs = Mysql_list_dbs ();
while (list ($db) = Mysql_fetch_row (DBS)) {
echo "$db <br>";
}

Note that the output is related to the user rights being used.
2) Mysql_db_name ()
String Mysql_db_name (Resource Result_set, Interger index)
Gets the name of the database in the Result_set returned by Mysql_list_dbs () where index is located.
3) Mysql_list_tables ()
Resource Mysql_list_tables (String database [, Resource link_id])
Gets all the table names in the database.
4) Mysql_tablename ()
String Mysql_tablename (Resource Result_set, Interger index)
Gets the table name in the result_set where Mysql_list_tables () returns the index.
In learning PHP's COM and. Net (Windows) function, I found a case of SQL Server through COM operation, looked for relevant information, so I have this PHP connection access article, I believe that the internet has a lot of, or posted here.
My machine Environment: win2000,apache2,php Version 5.1.0RC1
Copy Code code as follows:

<?php
$conn = new COM ("ADODB. Connection ") or Die (" Cannot start ADODB. Connection ");
$conn->open ("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=d:\\php5\\netbook.mdb");
$rs = $conn->execute ("SELECT * from Manage");//Recordset
$num _columns = $rs->fields->count (); The
Echo $num _columns. "<br/>\n";
for ($i =0; $i < $num _columns $i + +) {
$fld [$i] = $rs->fields ($i);
}
$rowcount = 0;
while (! $rs->eof) {
for ($i =0 $i < $num _columns $i + +)
{
echo htmlspecialchars ($fld [$i]->v Alue). "T";
}
Echo "<br/>\n";
$rowcount + +;//ROWCOUNT
$rs->movenext ();
}
$rs->close ();//Close Data set
$conn->close ();
?>
Related Article

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.