Microsoft PowerPoint - P766Ch13.ppt

Similar documents
Microsoft PowerPoint - 09.Android 程式設計-SQLite

目錄

天津天狮学院关于修订2014级本科培养方案的指导意见

投影片 1

Microsoft Word - 關聯性資料庫.doc

學 科 100% ( 為 單 複 選 題, 每 題 2.5 分, 共 100 分 ) 1. 請 參 閱 附 圖 作 答 : (A) 選 項 A (B) 選 項 B (C) 選 項 C (D) 選 項 D Ans:D 2. 下 列 對 於 資 料 庫 正 規 化 (Normalization) 的 敘

PHP WEB 程序设计 引导案例 信息时代信息化日新月异 计算机网络是信息技术的催化剂, 为信息化的飞速发展插上 了一对飞翔的翅膀 信息管理系统是信息化的一种形式, 也是信息化管理的一种手段, 大多 数的信息管理系统都要使用数据库存储大量的数据, 同时还必须通过网络进行实时的数据交 换和信息交互

Microsoft PowerPoint - Lotus Domino 8 and DB2.ppt [相容模式]

一 個 SQL Injection 實 例 的 啟 示 頁 2 / 6 因 此, 在 知 名 網 站 上 看 到 SQL Injection, 讓 人 驚 心, 卻 不 意 外 網 站 專 案 外 包 是 目 前 業 界 的 常 態, 而 在 價 格 取 勝 的 制 度 下, 低 價 得 標 的 S

untitled

SQL Server SQL Server SQL Mail Windows NT

R D B M S O R D B M S R D B M S / O R D B M S R D B M S O R D B M S 4 O R D B M S R D B M 3. ORACLE Server O R A C L E U N I X Windows NT w w

6-1 Table Column Data Type Row Record 1. DBMS 2. DBMS MySQL Microsoft Access SQL Server Oracle 3. ODBC SQL 1. Structured Query Language 2. IBM

Microsoft PowerPoint - asp15

标题

1-1 database columnrow record field 不 DBMS Access Paradox SQL Server Linux MySQL Oracle IBM Informix IBM DB2 Sybase 1-2

Microsoft Word - before.docx

A API Application Programming Interface 见 应 用 程 序 编 程 接 口 ARP Address Resolution Protocol 地 址 解 析 协 议 为 IP 地 址 到 对 应 的 硬 件 地 址 之 间 提 供 动 态 映 射 阿 里 云 内

幻灯片 1

Microsoft PowerPoint - asp14

untitled

01 SQL Server SQL Server 2008 SQL Server 6-1 SSIS SQL Server ( master ) ( msdb ) SQL Server ( master ) master 6-1 DTS sysadmin 6-1 sysa

untitled

untitled

(Microsoft PowerPoint - PHP_Ch11 [\254\333\256e\274\322\246\241])

untitled

電腦設備LP _第九組記憶體規範書


158 PHP MySQL PHP PHP ApacheSQL PHP&MySQL PHP&MySQL ( ) / ISBN X/T

基于ECO的UML模型驱动的数据库应用开发1.doc

ebook 132-2

TopTest_Adminstrator.doc

PowerPoint 演示文稿

穨ac3-4.PDF

基于UML建模的管理管理信息系统项目案例导航——VB篇

FileMaker 16 ODBC 和 JDBC 指南

0SQL SQL SQL SQL SQL 3 SQL DBMS Oracle DBMS DBMS DBMS DBMS RDBMS R DBMS 2 DBMS RDBMS R SQL SQL SQL SQL SELECT au_fname,au_ lname FROM authors ORDER BY

FileMaker 15 ODBC 和 JDBC 指南

untitled

目 錄 第 一 章 weberp 簡 介... 6 第 一 節 概 述... 6 第 二 節 安 全 性... 7 第 三 節 功 能... 7 一 銷 售 及 訂 單... 7 二 稅... 8 三 應 收 帳 款... 8 四 存 貨... 8 五 購 買... 9 六 應 付 帳 款... 9

ebook 96-16

導讀 ASP.NET HTML ASP 第一篇 基礎篇第 1 章 認識 ASP.NET ASP.NET ASP.NET ASP.NET ASP.NET 第 2 章 認識 Visual Studio 20 開發環境 Visual Studio 20 Visual Studio 20 第二篇 C# 程式

Microsoft PowerPoint - 資料庫程式設計教材.pptx

ebook4-附录C

第6章  数据库技术基础

掘 金 安 全 数 据 腾 讯 安 全 数 据 运 营 实 践 江 虎 (xti9er)


untitled

封面-12

数字有机体数据库系统用户手册

untitled

RUN_PC連載_12_.doc

Microsoft Word - 13院21号.doc

Visual C# 2005程式設計

<4D F736F F D203938BEC7ACECBCD2C0C0B8D5A8F7AEE6A6A1C0C92DB57BA6A1B35DAD705FA6B3B8D1B5AA5F2E646F63>

Microsoft PowerPoint - C-Ch11.ppt

Microsoft Word - ACG chapter00c-3ed.docx

Azure_s

回滚段探究

Microsoft PowerPoint - P766Ch11.ppt

1 1 Excel VBA 說明 ( ) (_) STEP4 Excel 2 STEP5 A1 1 B2 2 C3 3 STEP6 A1 STEP7 > > 1-11

ebook46-23

MySQL資料庫教學

Microsoft PowerPoint - P766Ch06.ppt

Microsoft PowerPoint - VB14.ppt

I

说 : 荀 子 极 偏 驳, 只 一 句 性 恶, 大 本 已 失 5 朱 熹 说 : 荀 扬 不 惟 说 性 不 是, 从 头 到 底 皆 不 识 6 采 取 的 都 是 这 种 理 论 框 架 另 一 种 理 论 框 架 始 于 20 世 纪 前 期, 这 便 是 诸 子 学 研 究 的 框 架


目錄... ivv...vii Chapter DETECT

目錄 C ontents Chapter MTA Chapter Chapter

软件概述

Microsoft Word - InoTouch Editor编程软件手册 doc

RUN_PC連載_8_.doc

PPBSalesDB.doc

untitled

一步一步教你搞网站同步镜像!|动易Cms

第六章 SQL 進階查詢

数据分析技术介绍

TPM BIOS Infineon TPM Smart TPM Infineon TPM Smart TPM TPM Smart TPM TPM Advanced Mode...8

關於本書 Part 3 CSS XHTML Ajax Part 4 HTML 5 API JavaScript HTML 5 API Canvas API ( ) Video/Audio API ( ) Drag and Drop API ( ) Geolocation API ( ) Part 5

支付宝2011年 IT资产与费用预算

840 提示 Excel - Excel -- Excel (=) Excel ch0.xlsx H5 =D5+E5+F5+G5 (=) = - Excel 00

Microsoft PowerPoint - 資料庫-08 [相容模式]

济南大学计算机科学与技术专业发展规划

Spyder Anaconda Spyder Python Spyder Python Spyder Spyder Spyder 開始 \ 所有程式 \ Anaconda3 (64-bit) \ Spyder Spyder IPython Python IPython Sp

高中信息技术课程标准

未命名

第 21 讲 CGI 程序 byperl 及 PHP 小结 张高川 遗传学与生物信息学系基础医学与生物科学学院苏州大学医学部 WX: zhanggaochuan QQ: 苏州大学医学部基础医学与生物科

习题1

危險物與有害物標示及通識規則

123

System Global Area, Oracle Background process Oracle, Server Process user process, user process : SQL*PLUS SYSTEM SQL> select name from v$datafile; NA

untitled

jdbc:hsqldb:hsql: jdbc:hsqldb:hsqls: jdbc:hsqldb:http: jdbc:hsqldb:https: //localhost // :9500 / /dbserver.somedomain.com /an_alias /enrollme

hw4

untitled

Microsoft Word - About_C_PointerAdvanced.doc

Microsoft PowerPoint - course10.ppt

"+handlermethod.getbean().getclass().getname()); public void aftercompletion(httpservletrequest req, HttpServletResponse resp, Object handler, Excepti

致理技術學院資訊管理學系專題企劃書格式建議書

Transcription:

PHP5&MySQL 程式設計 第 13 章存取 My SQL 資料庫

13-1 PHP 與 MySQL 資料庫 PHP 提供了數十個函式供我們存取 MySQL 資料庫, 包括 : mysql_affected_rows() mysql_client_encoding() mysql_close() mysql_connect() mysql_create_db() mysql_data_seek() mysql_db_name() mysql_db_query() mysql_drop_db() mysql_errno()

mysql_error() mysql_fetch_array() mysql_fetch_assoc() mysql_fetch_field() mysql_fetch_object() mysql_fetch_row() mysql_field_len() mysql_field_name() mysql_field_seek() mysql_field_table() mysql_field_type() mysql_free_result() mysql_get_client_info()

mysql_get_host_info() mysql_get_proto_info() mysql_get_server_info() mysql_list_dbs() mysql_list_fields() mysql_list_tables() mysql_num_fields() mysql_num_rows() mysql_pconnect() mysql_query() mysql_result() mysql_select_db()

13-2 建立與關閉資料連接 13-2-1 建立資料連接 一 使用 mysql_connect() 函式建立資料連接 我們可以使用 mysql_connect() 函式建立資料連接, 其語法如下 : mysql_connect([string server [, string username [, string password [, bool new_link]]]])

二 使用 mysql_pconnect() 函式建立永久資料連接 除了 mysql_connect() 函式之外, 您也可以選擇使用 mysql_pconnect() 函式建立永久資料連接, 其語法如下 : mysql_pconnect([string server [, string username [, string password]]])

13-2-2 關閉資料連接 mysql_close([resource link_identifier])

13-3 操作 MySQL 資料庫伺服器 13-3-1 取得預設字集名稱 mysql_client_encoding([resource link_identifier])

13-3-2 取得 MySQL 用戶端函式 mysql_get_client_info() 庫的版本資訊

13-3-3 取得 MySQL 主機的相 關資訊 mysql_get_host_info([resource link_identifier])

13-3-4 取得 MySQL 資料庫協定 的版本資訊 mysql_get_proto_info([resource link_identifier])

13-3-5 取得 MySQL 資料庫伺服 器的版本資訊 mysql_get_server_info([resource link_identifier])

13-3-6 建立資料庫 mysql_create_db(string database_name [, resource link_identifier])

13-3-7 刪除資料庫 mysql_drop_db(string database_name [, resource link_identifier])

13-3-8 取得操作 MySQL 資料庫 伺服器的錯誤訊息 mysql_errno([resource link_identifier]) mysql_error([resource link_identifier])

13-4 執行 SQL 命令 13-4-1 開啟資料庫 mysql_select_db( string database_name [, resource link_identifier])

13-4-2 執行 SQL 命令 使用 mysql_query() 函式執行 SQL 命令 mysql_query(string query [, resource 使用 mysql_db_query() 使用 [, resource link_identifier]) () 函式執行 SQL 命令 mysql_db_query(string database_name link_identifier]) database_name,, string query [, resource

13-4-3 取得執行 SQL 命令被影 響的記錄數或欄位數 mysql_num_rows() 函式 : 適用於執行 SELECT 陳述式, 可以傳回被篩選出來的記錄數, 其語法如下, 參數 result 為資源識別字 (resource identifier): mysql_num_rows(resource result) mysql_num_fields() 函式 : 適用於執行 SELECT 陳述式, 可以傳回被篩選出來的欄位數, 其語法如下, 參數 result 為資源識別字 (resource identifier): mysql_num_fields(resource result) mysql_affected_rows() 函式 : 適用於執行 INSERT UPDATE DELETE 陳述式, 可以傳回有多少筆記錄受到該陳述式的影響, 其語法如下, 參數 link_identifier 為連接識別字 (link identifier): mysql_affected_rows([resource link_identifier])

13-5 取得欄位資訊 13-5-1 使用 mysql_fetch_field() 函式取得欄位資訊 mysql_fetch_field(resource result [, int field_offset]) mysql_fetch_field() 函式的傳回值為 object 型別, 包含下列屬性 : name table max_length not_null primary_key unique_key multiple_key numeric blob type unsigned zerofill

舉例來說, 假設要取得第 2 個欄位資訊, 可以寫成如下 : $meta = mysql_fetch_field($result, 1); 假設要取得第 2 個欄位資訊並顯示其欄位名稱及資料型態, 可以寫成如下 : $meta = mysql_fetch_field($result, 1); echo " 欄位名稱 :": ". $meta->name; echo " 資料型態 :": ". $meta->type;

13-5-2 使用其它函式取得欄位資訊 PHP 還提供了下列函式, 讓我們取得欄位資訊 : mysql_field_name mysql_field_type mysql_field_len mysql_field_table 這四個函式均有兩個參數 : 參數 result: : 這是資源識別字 參數 field_offset: : 這是欄位的序號,0, 表示第一個欄位,1, 表示第二個欄位, 依此類推

13-5-3 移動欄位指標 mysql_field_seek() 函式讓我們可以輕鬆地移動欄位指標, 其語法如下 : mysql_field_seek(resource result,, int field_offset) 參數 result: : 這是資源識別字 參數 field_offset: : 這是欄位的序號,0, 表示第一個欄位,1, 表示第二個欄位, 依此類推 例如 : $meta = mysql_fetch_field($result, 1); $seek_result = mysql_field_seek($result, 4); $meta = mysql_fetch_field($result);

13-6 取得記錄內容 13-6-1 使用 mysql_result() 函式取得記錄內容 mysql_result() 函式一次可以取得一個欄位內容, 其語法如下 : mysql_result(resource result,, int row [, mixed field]) 參數 result 參數 row 參數 field 例如 : mysql_result($result, 2, 1); mysql_result($result, 2, "category"); 查詢結果所包含的記錄會佔用伺服器的記憶體, 雖然在所有程式碼執行完畢後會自動釋放佔用的記憶體, 但我們建議您, 可以在適當的時候使用 mysql_free_result() 函式釋放記憶體, 語法如下, 參數 result 為資源識別字 : mysql_free_result(resource result)

13-6-2 使用 mysql_db_name() 函式取得記錄內容 mysql_db_name() 函式一次可以取得一個欄位內容, 語法如下 : mysql_db_name(resource result,, int row [, mixed field]) 參數 result 參數 row 參數 field 例如 : mysql_db_name($result, 2, 1); mysql_db_name($result, 2, "category"); 查詢結果所包含的記錄會佔用伺服器的記憶體, 雖然在所有程式碼執行完畢後會自動釋放佔用的記憶體, 但我們建議您, 可以在適當的時候使用 mysql_free_result() 函式釋放記憶體, 語法如下, 參數 result 為資源識別字 : mysql_free_result(resource result)

13-6-3 使用 mysql_fetch_row() 函式取得記錄內容 PHP 提供的 mysql_fetch_row() 函式可以用來讀取一筆記錄, 然後將記錄指標移到下一筆, 倘若讀不到記錄, 就傳回 FALSE,, 其語法如下 : mysql_fetch_row(resource result) 例如 : $row1 = mysql_fetch_row($result); $row2 = mysql_fetch_row($result); $row3 = mysql_fetch_row($result); $row4 = mysql_fetch_row($result); $row5 = mysql_fetch_row($result); echo $row2[2]; echo $row3[0];

13-6-4 使用 mysql_fetch_array() 函式取得記錄內容 mysql_fetch_array() 函式的用途和 mysql_fetch_row() 函式一樣, 都是用來讀取記錄並存放在陣列, 然後將記錄指標移到下一筆, 倘若讀不到記錄, 就傳回 FALSE,, 不同之處在於取得欄位內容時,mysql_fetch_row(), 函式是以欄位序號取得欄位內容, 而 mysql_fetch_array() 函式則可以使用欄位序號或欄位名稱取得欄位內容 mysql_fetch_array(resource result [, int result_type]) 參數 result: : 這是資源識別字 參數 result_type: : 用來指定取得欄位內容的方式, 參數值有 MYSQL_NUM MYSQL_ASSOC MYSQL_BOTH

13-6-5 使用 mysql_fetch_assoc() 函式取得記錄內容 mysql_fetch_ assoc() 函式和 mysql_fetch_array() 函式一樣, 都是用來讀取記錄內容並存放在陣列, 然後將記錄指標移到下一筆, 其語法如下, 參數 result 為資源識別字 : mysql_fetch_assoc(resource result)

13-6-6 使用 mysql_fetch_object() 函式取得記錄內容 mysql_fetch_object() 函式和 mysql_fetch_array() 函式一樣, 都是用來讀取記錄內容, 然後將記錄指標移到下一筆, 倘若讀不到記錄, 會傳回 FALSE,, 其語法如下, 參數 result 為資源識別字 : mysql_fetch_assoc(resource result) 由於 mysql_fetch_object() 函式的傳回值為 object 型別, 記錄的每個欄位都會變成該物件的屬性, 所以在讀取欄位內容時, 只能使用欄位名稱

13-6-7 移動記錄指標 PHP 提供了 mysql_data_seek() 函式, 讓我們可以輕鬆地移動記錄指標, 其語法如下 : mysql_data_seek(resource result,, int row_number) 參數 result: : 這是資源識別字 參數 row_number: : 這是記錄的序號,0, 表示第一筆記錄,1, 表示第二筆記錄, 依此類推 例如 $row = mysql_fetch_row($result); $seek_result = mysql_data_seek($result, 9); $row = mysql_fetch_row($result);

13-7 其它功能 13-7-1 取得資料庫清單如果想知道 MySQL 資料庫伺服器包含哪些資料庫, 可以使用 mysql_list_dbs() 函式, 其語法如下, 參數 link_identifier 為連接識別字 : mysql_list_dbs([resource link_identifier]) 這個函式的傳回值為資源識別字, 裡面包含一個名稱為 Database 的欄位, 記錄數取決於資料庫的數目

13-7-2 取得資料表清單 如果想知道某特定資料庫包含哪些資料表, 可以使用 mysql_list_tables() 函式, 其語法如下, 參數 database_name 為資料庫名稱, 參數 link_identifier 為連接識別字 : mysql_list_tables(string database_name [, resource link_identifier]) 這個函式的傳回值為資源識別字, 裡面包含一個名稱為 Tables_in_ 資料庫名稱 的欄位, 記錄數取決於資料表的數目

13-7-3 取得欄位清單 如果想知道某特定資料表包含哪些欄位, 可以使用 mysql_list_fields() 函式, 其語法如下, 參數 database_name 為資料庫名稱, 參數 table_name 為資料表名稱, 參數 link_identifier 為連接識別字 : mysql_list_fields(string database_name,, string table_name [, resource link_identifier]) 這個函式的傳回值為資源識別字, 裡面包含所有欄位,0, 筆記錄

13-8 分頁瀏覽