日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

Mysql入門系列:MYSQL客戶機(jī)程序2—增加錯(cuò)誤檢查

瀏覽:1253日期:2023-11-30 19:20:36

; 6.3 客戶機(jī)程序2—增加錯(cuò)誤檢查 ; 我們的第二個(gè)客戶機(jī)程序?qū)⑾竦谝粋€(gè)客戶機(jī)程序一樣,但是將修改它們,考慮錯(cuò)誤出現(xiàn)的可能性?!皩㈠e(cuò)誤檢查作為讀者的練習(xí)”這樣的項(xiàng)目在編程文獻(xiàn)中相當(dāng)常見,這或許是因?yàn)闄z查錯(cuò)誤相當(dāng)令人討厭。但是,我贊同這種觀點(diǎn),即MySQL客戶機(jī)程序應(yīng)該測(cè)試錯(cuò)誤條件并適當(dāng)?shù)剡M(jìn)行回應(yīng)。由于某種原因,返回狀態(tài)值的客戶機(jī)庫(kù)的調(diào)用做這些事情,而且您要承擔(dān)忽略它們的后果。您最終還是要試圖捕獲由于沒有錯(cuò)誤檢查而出現(xiàn)在程序中的錯(cuò)誤,這些程序的用戶會(huì)對(duì)程序運(yùn)行如此不規(guī)律感到奇怪??紤]我們的程序,客戶機(jī)程序1。如何知道它是否真正連接到服務(wù)器上?可以通過查看服務(wù)器的日志,找出與運(yùn)行程序時(shí)間相應(yīng)的Connect和Quit事件:Mysql入門系列:MYSQL客戶機(jī)程序2—增加錯(cuò)誤檢查 這條消息表示根本沒有創(chuàng)建連接。不幸的是,客戶機(jī)程序1沒有告訴我們出現(xiàn)的這些結(jié)果。實(shí)際上它不能。它不能實(shí)現(xiàn)任何錯(cuò)誤檢查,所以它甚至不知道自己發(fā)生了什么事。無(wú)論如何,當(dāng)然不一定必須查看日志來(lái)尋找是否能連接到服務(wù)器!讓我們立刻改正它。在MySQL客戶機(jī)庫(kù)中返回值的例程基本上以下列兩種方式之一表示成功或失敗: ; ■ 成功時(shí),值的指針函數(shù)返回一個(gè)非NULL 指針,失敗時(shí)返回NULL(在這里NULL 的意思是“C NULL 指針”,而不是“MySQLNULL 列值”)。迄今為止,我們使用的客戶機(jī)庫(kù)的例程mysql_init() 和mysql_real_connect() 都用返回連接處理程序的指針來(lái)表示成功, NULL 表示失敗。 ; ■ 整型數(shù)值的函數(shù)一般成功返回0,失敗返回非0。不要測(cè)試特定的非0值,如- 1。因?yàn)楫?dāng)失敗時(shí),并不保證客戶機(jī)庫(kù)函數(shù)返回任何特定的值。有時(shí),您可能會(huì)看到像如下的較舊的錯(cuò)誤地測(cè)試返回值的代碼:Mysql入門系列:MYSQL客戶機(jī)程序2—增加錯(cuò)誤檢查 這個(gè)測(cè)試可能工作,也可能不工作。MySQLAPI 不將任何非0錯(cuò)誤的返回指定為特定的值,而只判斷它(顯然地)是否為0。這個(gè)測(cè)試應(yīng)該寫成下面兩段之一:Mysql入門系列:MYSQL客戶機(jī)程序2—增加錯(cuò)誤檢查 或如下所示:Mysql入門系列:MYSQL客戶機(jī)程序2—增加錯(cuò)誤檢查 這兩個(gè)測(cè)試是等價(jià)的。如果審核MySQL的源代碼,則可以發(fā)現(xiàn),它基本上用第一種形式測(cè)試,因?yàn)檫@編寫起來(lái)更簡(jiǎn)短。 ; 不是每個(gè)API 調(diào)用都返回值。我們使用的另一個(gè)客戶機(jī)例程mysql_close() 就不返回值(它如何失敗?失敗了又如何?無(wú)論如何,都要進(jìn)行連接)。 ; 當(dāng)客戶機(jī)庫(kù)調(diào)用失敗,并且需要有關(guān)失敗的詳細(xì)信息時(shí), API 中的兩個(gè)調(diào)用都是有用的。mysql_error() 返回包括錯(cuò)誤信息的字符串,而mysql_errno() 返回?cái)?shù)值代碼。應(yīng)該在錯(cuò)誤出現(xiàn)以后立刻調(diào)用它們,因?yàn)槿绻l(fā)布另一個(gè)返回狀態(tài)的API 調(diào)用,則從mysql_error() 或mysql_errno() 獲取的任何錯(cuò)誤信息都將來(lái)自于后面的調(diào)用。 ; 一般來(lái)說(shuō),程序的用戶查看錯(cuò)誤字符串比查看錯(cuò)誤代碼更有啟發(fā)。如果只報(bào)告兩者中的一個(gè),則建議報(bào)告字符串。出于全面考慮,本章的這個(gè)樣例報(bào)告兩個(gè)值。考慮前述的討論,我們將編寫第二個(gè)客戶機(jī)程序,即客戶機(jī)程序2。它類似于客戶機(jī)程序 ; 1,但是適當(dāng)?shù)卦黾恿隋e(cuò)誤檢查代碼。源文件client2.c 如下所示:Mysql入門系列:MYSQL客戶機(jī)程序2—增加錯(cuò)誤檢查Mysql入門系列:MYSQL客戶機(jī)程序2—增加錯(cuò)誤檢查 這個(gè)錯(cuò)誤檢查的邏輯是,如果失敗,則mysql_init() 和mysql_real_connect() 都返回NULL。請(qǐng)注意,盡管這個(gè)程序檢查mysql_init() 返回的值,但是,如果它失敗,卻不調(diào)用錯(cuò)誤報(bào)告函數(shù)。這是因?yàn)楫?dāng)mysql_init() 失敗時(shí),不能假設(shè)連接處理程序包括任何有意義的信息。 ; 相反,如果mysql_real_connect() 失敗了,則連接處理程序并不反映有效的連接,但是的確包括傳送給錯(cuò)誤報(bào)告函數(shù)的錯(cuò)誤信息(不要將該處理程序傳送給任何其他的客戶機(jī)例程!因?yàn)樗鼈円话慵僭O(shè)是一個(gè)有效連接,所以您的程序可能崩潰)。編譯和連接客戶機(jī)程序2,然后試著運(yùn)行它: ;% client2 ; 如果客戶機(jī)程序2沒有別輸出,則連接成功。另一方面,可能會(huì)如下所示:Mysql入門系列:MYSQL客戶機(jī)程序2—增加錯(cuò)誤檢查 這個(gè)輸出表示沒有創(chuàng)建連接,并說(shuō)明為什么?;蛘?,它還表示我們的第一個(gè)程序,即客戶機(jī)程序1,沒有成功地連接到服務(wù)器(畢竟客戶機(jī)程序1使用同樣的連接參數(shù))!而在那時(shí)我們不知道,因?yàn)榭蛻魴C(jī)程序1沒有錯(cuò)誤檢查。而客戶機(jī)程序2做檢查,所以當(dāng)出問題時(shí),它可以告知我們。這就是應(yīng)該始終測(cè)試API 函數(shù)返回值的原因。 ; MySQL郵件清單問題經(jīng)常是與錯(cuò)誤檢查有關(guān)的。典型的問題是“當(dāng)發(fā)送這個(gè)查詢時(shí),為什么我的程序崩潰了?”或“我的程序怎么沒有返回任何東西?”在許多情況下,在查詢發(fā)布以前,有疑問的程序不檢查在發(fā)布該查詢前是否成功地建立了連接,或者不檢查在試著檢索結(jié)果前確保服務(wù)器成功執(zhí)行該查詢。不要假定每個(gè)客戶機(jī)庫(kù)都調(diào)用成功。 ; 本章下面的例子完成錯(cuò)誤檢查,而且也應(yīng)該這樣??雌饋?lái)它好像有更多的工作,但是從長(zhǎng)遠(yuǎn)地運(yùn)行來(lái)看,它的工作實(shí)際上是少的,因?yàn)槟M(fèi)了更少的時(shí)間來(lái)捕獲錯(cuò)綜復(fù)雜的問題。在第7章“Perl DBI API”和第8章“PHP API”中,也使用這種檢查錯(cuò)誤的方法。 ; 現(xiàn)在,當(dāng)運(yùn)行客戶機(jī)2的程序時(shí),假設(shè)看到拒絕訪問( Access denied)的消息。如何改正這個(gè)問題呢?一種可能是將主機(jī)名稱、用戶名稱和口令的#define 行更改為允許訪問服務(wù)器的值。這是有好處的,在這個(gè)意義上,至少應(yīng)該能做一個(gè)連接。但是,這些值是程序中的固定編碼。所以筆者建議不要用這種方法,特別是對(duì)口令值。當(dāng)將自己的程序編譯為二進(jìn)制格式時(shí),您可能認(rèn)為口令隱藏起來(lái)了,但是,如果有人在程序上運(yùn)行strings,則它根本隱藏不住(更不用說(shuō)明讀取訪問源文件的人根本不用做一點(diǎn)工作,就可以獲取口令)。 ; 在“客戶機(jī)程序4—運(yùn)行時(shí)獲取連接參數(shù)”一節(jié)中我們將處理訪問的問題。首先,筆者想說(shuō)明編寫連接代碼的一些其他方法。

標(biāo)簽: MySQL 數(shù)據(jù)庫(kù)
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
精品国产亚洲一区二区三区大结局| 欧美 日韩 国产一区二区在线视频| 伊人久久大香线蕉av超碰演员| 成人免费电影网址| 欧美精品羞羞答答| 亚洲2区在线| 久久精品人人| 亚洲成人国产| 亚洲激情另类| 欧美日韩午夜电影网| 狂野欧美性猛交xxxx| 麻豆成人在线观看| 国产综合精品| 69堂精品视频在线播放| 国产日本亚洲| 日韩毛片在线| 亚洲日本三级| 婷婷成人av| 久久大逼视频| 亚洲精品看片| 精品一区二区三区中文字幕在线| 丝袜诱惑一区二区| 精品日韩毛片| 香蕉久久久久久| 国产精品一区二区99| 中文字幕系列一区| 日韩一区二区久久| 亚洲精品婷婷| 国产精品久久久久av电视剧| 国产一区亚洲| 国产精品天堂蜜av在线播放| 在线看片国产福利你懂的| 韩日一区二区三区| 久草免费在线视频| 黄色亚洲大片免费在线观看| 国产麻豆一区二区三区| 国产精选在线| 97精品国产| 欧美一级网址| 日本精品影院| 麻豆精品久久久| 日韩一级欧洲| 亚洲成a人片| 欧美视频久久| 日韩免费小视频| 精品一区二区三区免费看| 久久亚洲精品伦理| 精品72久久久久中文字幕| 五月亚洲婷婷 | 蜜桃久久久久| 日韩精品高清不卡| 午夜一级久久| 国产精品日本| 美女被久久久| 欧美在线资源| 日韩久久电影| 精品久久中文| 国产免费久久| 亚洲精品进入| 亚洲免费观看| 国产精品7m凸凹视频分类| 啪啪国产精品| 超碰超碰人人人人精品| 欧美成人aaa| 国产日韩欧美在线播放不卡| 国产精品一区二区三区四区在线观看| 日韩一区精品视频| 在线日韩视频| 亚洲一级少妇| 日韩欧美另类一区二区| 欧美黄色网页| 日韩av专区| 久久男人天堂| 播放一区二区| 蜜桃精品在线| 亚洲综合日本| 亚洲一区有码| 欧美日一区二区三区在线观看国产免 | 激情偷拍久久| 91精品在线观看国产| 91精品啪在线观看国产18| 精品国内亚洲2022精品成人| 日韩激情一二三区| 久久国产三级精品| 国产精品99视频| 亚洲欧洲午夜| 国产成人精品三级高清久久91| 欧美精品一区二区久久| 国产精品嫩草99av在线| 亚洲视频二区| 免费看一区二区三区| 国产自产自拍视频在线观看| 久久男人av资源站| 亚洲一区二区三区高清不卡| 免费日韩av片| 国产精品日本一区二区不卡视频| 国产精品网站在线看| 亚洲伦乱视频| 亚洲精品自拍| 国产va在线视频| 亚洲欧美在线专区| 日韩在线免费| 日韩在线成人| 国产精品久久久久久久免费观看 | 亚洲国产影院| 成人av二区| 麻豆极品一区二区三区| 激情欧美亚洲| 久久xxx视频| 久久亚洲美女| 国产综合婷婷| 精品黄色一级片| 亚洲精品进入| 久久精品在线| 国产伦精品一区二区三区视频| 少妇精品导航| 国产成人免费精品| 日韩高清不卡一区| 国产福利资源一区| 久久只有精品| 国产91精品对白在线播放| 久久精品国产网站| 国产人成精品一区二区三| 国产一区成人| 国产精品久一| 国产精品日韩精品在线播放| 日韩成人精品一区二区| 亚洲v在线看| 国产亚洲激情| 日本v片在线高清不卡在线观看| 国产日韩免费| 久久天堂av| 日韩视频一区| 日韩美女国产精品| 中国字幕a在线看韩国电影| 日韩中文视频| 亚洲久草在线| 99tv成人| aa亚洲婷婷| 国产欧美69| 亚洲高清不卡| 亚洲综合专区| 国产精品麻豆成人av电影艾秋| 国产精品多人| 亚洲国产日韩欧美在线| 中文字幕亚洲在线观看| 国产一区二区三区久久| 亚洲欧美视频| 国产一区二区三区国产精品| 国产亚洲一区在线| 国产日产一区| 麻豆一区二区99久久久久| 国产精品免费99久久久| 国产一区二区久久久久| 久久久久国产精品一区三寸 | 亚洲一区二区三区四区五区午夜 | 日本在线成人| 老司机免费视频一区二区| 久草精品视频| 99在线精品免费视频九九视| 日韩精品亚洲aⅴ在线影院| 美女免费视频一区| 红桃视频国产精品| 日韩精品一区二区三区av | 国产一区视频在线观看免费| 免费人成精品欧美精品| 久久av综合| 不卡中文一二三区| 国产精品v一区二区三区| 美女久久久久| 国产精品mv在线观看| 一区二区视频欧美| 国产精品一站二站| 99视频在线精品国自产拍免费观看| 国产高清日韩| 免费看欧美美女黄的网站| av资源亚洲| 日韩和欧美一区二区三区| 日韩和的一区二在线| 国产免费播放一区二区| 蜜臀久久99精品久久久久宅男| 日韩精品一卡| 久久久久久亚洲精品美女| 欧美一级二级视频| 亚洲精品日本| 国产视频亚洲| 免费国产自久久久久三四区久久| 国产精选一区| 日韩va亚洲va欧美va久久| 日韩影院精彩在线| 午夜国产欧美理论在线播放| 日韩精品永久网址| av中文资源在线资源免费观看| 国产视频一区二| 欧美激情亚洲| 精品亚洲成人| 久久久久久一区二区| 国产资源在线观看入口av| 在线天堂中文资源最新版| 国精品产品一区|