PHP之mysql笔记

1:在php中提供了两个用于连接MySQL数据库服务器的函数。

(1)int mysql_connect(hostname[:port][:/path/to/socket],user,pass).

(2)Int mysql_pconnect(hostname[:port][:/path/to/socket],user,pass).

这两个连接函数的区别:

a:使用mysql_pconnect( )建立的是一种“牢固的”(persistent)连接,即在对数据库的操作结束后,已建的连接并不会被断开,而是一直保留着,即使使用mysql_close()也不能终止连接。而mysql_connect()会在结束了对数据库的操作后,自动的关闭已建立的连接。

b:使用mysql_pconnect()时,系统总是先检查是否已经存在使用了同样的主机名、用户名和密码的“牢固连接”,如果有则直接返回该连接的连接号,而不会建立新连接。而在使用mysql_connect()时,如果用户再次使用相同的参数建立连接,系统不会建立新的连接,而是返回旧的连接号。

2PHP 对 MySQL 数据库的库级操作共有 种, 它 们主要是:创建数据库、选择数据库和删除数据库。这 个操作分别由 个函数来完成,它们是:

int mysql_create_db(string database_name, int [lin k_identifier ] );

int mysql_select_db(string database_name, int [link_ identifier ] );

int mysql_drop_db(string database_name, int [lin k_identifier ] );

在函数的参数表中, “ database_name ” 是被操作的数据库的名字; “ lin k_idenifier”由 mysql_connect( ) 或 mysql_pconnect( ) 返回的连接标识号,如果不指定连接标识号,系统会试图使用上次连接的连接号。

3:提交查询请求。

1):int mysql_query( string query, int [link_identifier ] );

2):int mysql_db_query( string database, string query, int [link _identif ier ] );

两个函数的返回值都与传来的具体请求有关。如果 query 是一个 SELECT 语句,语句又被成功执行 ,则返回一个结果标识符 , 如果语句执行有误则返回 FALSE 。 如果 query是一个 INSERT 、 DELETE 、 REPLACE 或 UPDATE 等其他 SQL 语句 ,则返回一个 boolean类型的值。

 案例:

<?

$conn=mysql_connect("localhost","root","mysqladmin");

mysql_select_db("bbs",$conn);

mysql_query("set names 'GBK'");//防止中文乱码

$sql="insert into user(name) values('五天')";

mysql_query($sql);

echo "插入数据成功!";

?>

4 :获取查询结果中的数据。

string mysql_result( integer result , integer row,mixed [field] ) ;

array mysql_fetch_row(integer result ) ;

array mysql_fetch_array( integer result , integer [result_ type] ) ;

object mysql_fetch_object( integer result , integer [result_ type] ) ;

案例1

<?

$conn=mysql_connect("localhost","root","mysqladmin");

mysql_select_db("bbs",$conn);

mysql_query("set names 'GBK'");//防止中文乱码

$sql="select * from user";

$result=mysql_query($sql);

while($row=mysql_fetch_array($result)){

echo $row[id]."==>".$row[name]."<br>";

}

?>

案例2

<?

$conn=mysql_connect("localhost","root","mysqladmin");

mysql_select_db("bbs",$conn);

mysql_query("set names 'GBK'");//防止中文乱码

$sql="select * from user";

$result=mysql_query($sql);

while($row=mysql_fetch_row($result)){

echo $row[0]."==>".$row[1]."<br>";

}

?>

案例3

<?

$conn=mysql_connect("localhost","root","mysqladmin");

mysql_select_db("bbs",$conn);

mysql_query("set names 'GBK'");//防止中文乱码

$sql="select * from user";

$result=mysql_query($sql);

while($row=mysql_fetch_object($result)){

echo $row->id."==>".$row->name."<br>";

}

?>

5:获取查询结果中的数目信息。

integer mysql_num_fields ( integer resul t) ;

integer mysql_num_rows ( integer resul t) ;

这两个函数分别获得结果中字段的数目和行数。参数 result 是由 mysql_query( ) mysql_db _query( ) 返回的一个结果标识符。

案例:

<?

$conn=mysql_connect("localhost","root","mysqladmin");

mysql_select_db("bbs",$conn);

mysql_query("set names 'GBK'");//防止中文乱码

$sql="select * from user";

$result=mysql_query($sql);

echo "fields:".mysql_num_fields($result)."<br>";

echo "rows:".mysql_num_rows($result);

?>

或者:

$sql="select count(*) from user";

$result=mysql_query($sql);

if($row=mysql_fetch_row($result)){

echo $row[0];

}

6:数据库连接异常处理。

<?

$conn=@mysql_connect("localhost","root","mysqladmin") or 

die("Sorry,Unable to connect MySQL Server.");

$db=@mysql_select_db("bbs",$conn) or 

die("Sorry,Unable to select database bbs.");

mysql_query("set names 'GBK'");

?>

 

原文地址:https://www.cnblogs.com/yshyee/p/3385548.html