站内搜索

MySQL数据库函数详解(1)

(1) int mysql_affected_rows([int link_id]);

   在给定的连接中,返回由最近的DELETE、INSERT、REPLACE或者UPDATE语句所作用的行数。如果没有行 被修改,则mysql_affected_rows()返回0,如果出现错误,则返回-1。
   在SELECT查询之后,mysql_affected_rows()返回所选择的行数。但一般是与SELECT语句一道使用

mysql_num_rows().

使用范例:
<?php

$link=mysql_pconnect("localhost","sunsoft","suixiang")
or die("Could not connect");

mysql_select_db("samp_db") or die("Could not select database");


$query="INSERT INTO

member(last_name,first_name,expiration)"."VALUES('Brown','Marcia','2002-6-3')";


$result=mysql_query($query) or die("Query failed");

printf("%d row%s insertedn",mysql_affected_rows(),mysql_affected_rows()==1?"
":"s");

?>



(2) int mysql_close(int[link_id]);

   关闭由link_id标识的与MySQL服务器的连接。如果没有指定连接,则mysql_close()关闭最近打开的连接。如果成功,则mysql_close()返回真,失败则返回假。对由mysql_pconnect()打开的永久连接,mysql_close()忽略相应的关闭请求,只是返回值。如果要关闭一个连接,就应该用mysql_connect()而不是mysql_pconnect()来打开它。

使用范例:

<?php

$link=mysql_connect("localhost","sunsoft","suixiang")
or die("Could not connect");

print("Connected successfully");

mysql_close($link);

?>

<EPRO_SPLIT>

(3) int mysql_connect(string [hostname] [:port], string [username], string [password]);



   本函式建立与 MySQL 伺服器的连线。其中所有的参数都可省略。当使用本函式却不加任何参数时,参数 hostname 的内定值为 localhost、参数 username 的内定值为 PHP 执行行程的拥有者、参数 password 则为空字串 (即没有密码)。而参数 hostname 后面可以加冒号与埠号,代表使用那个埠与 MySQL 连接。当然在使用资料库时,早点使用 mysql_close() 将连线关掉可以节省资源。

使用范例

这是一位未具名网友提供的范例 (18-Feb-1999)

<?php

$dbh = mysql_connect('localhost:3306','mcclain','standard');

mysql_select_db('admreqs');

$query = "insert into requests(date, request, email, priority,status) values

(NOW(),'$description', '$email', '$priority', 'NEW')";

$res = mysql_query($query, $dbh);

$query = "select max(id) from requests";

$res = mysql_query($query, $dbh);

$err = mysql_error();

if($err){

echo "发生错误,请通知<a href=mailto:webmaster@my.site>站长</a>";


}

$row = mysql_fetch_row($res);

echo "未来您使用的号码为: ".$row[0];

?>


(4) int mysql_create_db(string db_name [, int link_id]);

   告诉由link_id标识的MySQL服务器用给定的名称来创建数据库。如果数据库创建成功,则返回真;如果出现错误,则返回假。必须在数据库有创建它的CREATE权限。可能利用mysql_query()较利用mysql_create_db()发布CREATE DATABASE 语句更为适合。

<?php

$link=mysql_pconnect("localhost","sunsoft","suixiang");
or die("Could not connect");

if(mysql_create_db("my_db"))

print("Database created successfullyn");

else

print("Error creating database:%sn",mysql_error());

?>

(5) int mysql_data_seek(int result_id, int row_num);

   由SELECT查询返回的每个结果集都有一个行游标,指示下一个提取行的函数(mysql_fetch_array()、mysql_fetch_object()或者mysql_fetch_row())调用将返回哪一行。mysql_data_seek()将给定结果集的指针设置到给定的行。行号的范围为0到mysql_num_rows()-1。如果行号合法,则mysql_data_seek()返回真,否则返回假。

<?php

$link=mysql_pconnect("localhost","sunsoft","suixiang")
or die("Could not connect");

mysql_select_db("samp_db") or die("Could not select database");


$query="SELECT last_name,first_name FROM president");

$result=mysql_query($query) or die("Query failed");

for($i=mysql_num_rows($result)-1;$i>=0;$i-)

{

if(!mysql_data_seek($result,$i);

{

printf("Cannot seek to row %dn",$i);

continue;

}

if(!$row=mysql_fetch_object($result)))

continue;

printf("%d %s<BR>n",$row->last_name,$row->first_name);

}

mysql_free_result($result);

?>

  • 上一篇:MySQL数据库函数详解(2)
  • 下一篇:MYSQL服务维护及应用设计笔记