php 資料庫高階操作

2021-08-23 15:53:11 字數 2512 閱讀 5570

資料庫高階操作

(1)獲取報錯資訊mysql_error(),mysql_errno()

string mysql_error([resource $link_identifier]);返回上乙個mysql函式的錯誤文字,如果沒有出錯則返回空字串

int mysql_errno([resource $link_identifier]);返回上乙個mysql函式的錯誤號碼,如果沒有出錯則返回0

例如:選擇乙個不存在的資料庫會出錯,在乙個已經存在的資料庫中,操作乙個不存在的表也會出錯。

(2)獲取資料庫和表的資訊

mysql_list_dbs(),

mysql_db_name(),

mysql_list_tables(),

mysql_tablename()

具體用法:

resource mysql_list_dbs([resource $link_identifier])

string mysql_db_name(resource $result,int $row[,mixed $field])

resource mysql_list_tables(string $databasename[,resource $link_identifier])

string mysql_tablename(resource $result,int $i)

(3)▼mysql_free_result()釋放記憶體

▼mysql_num_rows()判斷結果指標中所指記錄的個數

<?php

#連線資料庫

$link=mysql_connect("localhost","root","root");

//選擇資料庫--不存在的資料庫,出錯

mysql_select_db("noexistentdb");

echo mysql_error()."

";mysql_select_db("rorely");

#查詢不存在的表,出錯

mysql_query("select * from noexistenttable");

echo mysql_error()."";

#輸出資料庫列表

$db_list=mysql_list_dbs($link);

while($row=mysql_fetch_object($db_list)) echo $row->database."

";echo"";

#輸出資料庫列表中所有資料庫的名稱

$i=0;

$count=mysql_num_rows($db_list);

while($i<$count)

echo"";

#輸出資料庫列表中所有的所有表mysql_list_tables(dbname)

$result=mysql_list_tables("mysql");

if(!$result)

while($row=mysql_fetch_row($result))

print "table:$row[0].

";mysql_free_result($result);

echo"";

#輸出資料庫表mysql_tablename(resource)

$result=mysql_list_tables("rorely");

for($i=0;$i

輸出結果如下:

unknown database 'noexistentdb'

table 'rorely.noexistenttable' doesn't exist

information_schema

mysql

rorely

test

information_schema

mysql

rorely

test

table:columns_priv.

table:db.

table:event.

table:func.

table:general_log.

table:help_category.

table:help_keyword.

table:help_relation.

table:help_topic.

table:host.

table:ndb_binlog_index.

table:plugin.

table:proc.

table:procs_priv.

table:servers.

table:slow_log.

table:tables_priv.

table:time_zone.

table:time_zone_leap_second.

table:time_zone_name.

table:time_zone_transition.

table:time_zone_transition_type.

table:user.

table:test

php資料庫操作

獲取鏈結 conn mysql connect localhost root root 測試當前連線的預設字符集名稱。charset mysql client encoding conn echo charset echo if conn else 設定gbk 就不會出現亂碼 雖然專案用的是utf ...

php資料庫操作

連線資料庫 header content type text html charset utf 8 define hostname localhost define username bestpool define password 123456 define database guess x co...

php 資料庫操作

pdo 連線資料庫 pdo new pdo mysql host 127.0.0.1 dbname php root root 準備sql語句,佔位符我們不再用?用 命名佔位符 sql delete from user where id id 建立預處理物件 stmt pdo prepare sql...