电脑知识|欧美黑人一区二区三区|软件|欧美黑人一级爽快片淫片高清|系统|欧美黑人狂野猛交老妇|数据库|服务器|编程开发|网络运营|知识问答|技术教程文章 - 好吧啦网

您的位置:首頁技術文章
文章詳情頁

Mysql入門系列:建立MYSQL客戶機程序的一般過程

瀏覽:12日期:2023-11-30 19:16:44

; MySQL提供用C編程語言編寫的客戶機庫,可以用它編寫訪問MySQL的客戶機程序。這個庫定義了應用程序編程接口,包括下面的實用程序: ; ■ 建立和終止與服務器會話的連接管理例程。 ; ■ 構造查詢的例程,將例程發送到服務器,并處理結果。 ; ■ 當其他C API調用失敗時,確定錯誤準確原因的狀態和錯誤報告函數。 ; 本章介紹如何用客戶機庫編寫自己的程序。我們要記住的一些要點是,自己的程序與MySQL分發包中已有的客戶機程序的一致性,代碼的模塊性和可重用性。本章假設您知道用C編程的一些知識,但并不一定是專家。本章從簡單到復雜粗略地開發了一系列的客戶機程序。這個過程是第一部分開發了一個程序框架,該框架除了與服務器連接和斷開以外不能作任何事情。這樣做的原因是,盡管MySQL客戶機程序是為不同的目的而編寫的,但它們都有一個共同點:即創建與服務器的連接。 ; 我們將用以下步驟來建立這個程序框架: ; 1. 編寫一些連接和斷開的簡要代碼(客戶機程序1)。 ; 2. 增加一些錯誤檢查(客戶機程序2)。 ; 3. 使連接代碼模塊化和可重用化(客戶機程序3)。 ; 4. 增加獲取運行時連接參數的能力(主機,用戶,口令)(客戶機程序4)。 ; 這個框架一般是合理的,可以使用它作為編寫任意數量的客戶機程序的基礎。開發它以后,我們將暫不考慮如何處理各種問題。首先,我們將討論如何處理特定的硬編碼的SQL語句,然后再開發用于處理任意語句的代碼。在這之后,將查詢處理的代碼增加到客戶機程序框架中,開發另一個程序(客戶機程序5),它類似于mysql客戶機程序。我們也將考慮(并解決)一些通用的問題,如“如何獲取有關表的結構信息?”和“如何在數據庫中插入圖像?”只有在需要時,本章才討論客戶機庫的函數和數據類型。要想了解所有函數和類型的列表,請參閱附錄F“C API 參考”。可以用這個附錄作為使用客戶機庫任何部分的進一步的背景信息的參考。 ; 樣例程序可以由聯機下載得到,可以直接使用,而不必再鍵入它們。有關的指導,請參閱附錄A“獲得和安裝軟件”。 ; 在哪里尋找樣例 ; MySQL郵件清單的一個共同問題就是“我在哪里可以找到一些用C 寫的客戶機樣例?”。當然,這個答案是“就在本書里!”。但是,許多人好像并沒有考慮的是MySQL分發包中包括了若干客戶機程序(例如mysql、mysqladmin 和mysqldump),這些大部分都是用C編寫的。因為這個分發包可以很容易地以源程序形式使用,所以MySQL提供非常少的樣例客戶機代碼。因此,如果您還沒有這樣做,找個時間找到源程序分發包,在客戶機目錄中查看這些程序。MySQL客戶機程序為共享軟件,從那里可以為自己的程序自由地借用代碼。 ; 在本章提供的樣例和MySQL分發包中包括的客戶機程序之間,可以找到與自己編寫程序時想做的事情相類似的代碼。如果是這樣,可以通過拷貝和修改已有的程序來重新使用代碼。應該閱讀本章,了解客戶機庫是如何工作的。然而,請記住,并不總是需要自己編寫瑣碎的每件事情(您將注意到,在本章編寫程序的討論中,代碼的可重用性是目的之一)。通過使用其他人編好的程序,可以避免許多工作,那是最好的。 ; 6.1建立客戶機程序的一般過程 ; 本節介紹使用MySQL客戶機庫編譯和連接程序所包括的步驟。不同的系統建立客戶機程序的命令也有所不同,可能需要稍微修改一下這里介紹的命令。然而,這里的說明是通用的,應該能夠將它用于幾乎您編寫的任何客戶機程序中。 ; 6.1.1基本的系統需求 ; 當您用C 編寫MySQL客戶程序時,顯然將需要一個C 編譯程序。這里說明的樣例使用gcc。除了自己的源文件以外,還將需要下列程序: ; ■ MySQL頭文件。 ; ■ MySQL客戶機庫。 ; MySQL頭文件和客戶機庫組成客戶機編程的支持程序。它們可能已經安裝到您的系統上。如果沒有,應獲取它們。如果MySQL從源程序分發包或二進制分發包中安裝,則客戶機可編程的支持程序應該已經作為該處理的一部分安裝了。如果MySQL是從RPM 文件中安裝的,則除非安裝了開發程序R P M,否則就沒有這種支持。如果需要安裝MySQL頭文件和庫,請參閱附錄A。 ; 6.1.2 編譯和連接客戶機程序 ; 要想編譯和連接客戶機程序,就必須指定MySQL頭文件和客戶機庫的位置,因為它們通常不安裝在編譯程序和連接程序缺省搜索的位置。對于下面的樣例,假定頭文件和客戶機庫的位置為/usr/local/include/mysql和/ usr / local / lib / mysql。要想告知編譯程序如何尋找MySQL頭文件,則當將源文件編譯為目標文件時,傳送給它一個-I/usr/local/include/mysql參數。例如,可以使用這樣的命令:Mysql入門系列:建立MYSQL客戶機程序的一般過程 要想告知連接程序在哪,可以找到客戶機庫和它的名稱,當連接目標文件產生一個可執行的二進制文件時,傳送-L/usr/local/lib/mysql和-lmysqlclient 參數,如下所示:Mysql入門系列:建立MYSQL客戶機程序的一般過程 如果客戶機程序包括多個文件,則所有目標文件的名稱都要列在連接命令上。如果連接步驟導致不能找到必需的floor() 函數的錯誤,則通過在命令行的后面增加- l m,連接到數學庫:Mysql入門系列:建立MYSQL客戶機程序的一般過程 可能還需要增加其他的庫。例如,在Solaris 上可能需要-lsocket -lnsl。 ; 如果沒有使用make 建立程序,則建議您了解一下如何進行,以便不必手工地鍵入許多建立程序的命令。假設有一個客戶機程序myclient,包括兩個源文件main.c 和aux.c,及一個頭文件myclient.h。一個簡單的Makefile 建立這個程序的代碼,如下所示:Mysql入門系列:建立MYSQL客戶機程序的一般過程 如果是一個需要連接到數學庫的系統,則更改LIBS 的值,并將-lm 加到最后:LIBS = -L/usr/local/lib/mysql-lmysqlclient -lm如果需要其他的庫,如-lsocket 和- l n s l,則也要將這些庫加到LIBS 中。使用M a k e f i l e,無論何時修改何源文件,只簡單地鍵入“ m a k e”就可以重新建立程序代碼。那比鍵入一句長的gcc 命令更容易,發生錯誤更少。

標簽: MySQL 數據庫
主站蜘蛛池模板: ★济南领跃标识制作公司★济南标识制作,标牌制作,山东标识制作,济南标牌厂 | 手机存放柜,超市储物柜,电子储物柜,自动寄存柜,行李寄存柜,自动存包柜,条码存包柜-上海天琪实业有限公司 | 润滑油加盟_润滑油厂家_润滑油品牌-深圳市沃丹润滑科技有限公司 琉璃瓦-琉璃瓦厂家-安徽盛阳新型建材科技有限公司 | MES系统工业智能终端_生产管理看板/安灯/ESOP/静电监控_讯鹏科技 | 低噪声电流前置放大器-SR570电流前置放大器-深圳市嘉士达精密仪器有限公司 | 蓝牙音频分析仪-多功能-四通道-八通道音频分析仪-东莞市奥普新音频技术有限公司 | 旅游规划_旅游策划_乡村旅游规划_景区规划设计_旅游规划设计公司-北京绿道联合旅游规划设计有限公司 | TPE_TPE热塑性弹性体_TPE原料价格_TPE材料厂家-惠州市中塑王塑胶制品公司- 中塑王塑胶制品有限公司 | 精密光学实验平台-红外粉末压片机模具-天津博君 | 辐射色度计-字符亮度测试-反射式膜厚仪-苏州瑞格谱光电科技有限公司 | 十二星座查询(性格特点分析、星座运势解读) - 玄米星座网 | 杭州火蝠电商_京东代运营_拼多多全托管代运营【天猫代运营】 | 铸钢件厂家-铸钢齿轮-减速机厂家-淄博凯振机械有限公司 | 超声波_清洗机_超声波清洗机专业生产厂家-深圳市好顺超声设备有限公司 | 透平油真空滤油机-变压器油板框滤油机-滤油车-华之源过滤设备 | 华夏医界网_民营医疗产业信息平台_民营医院营销管理培训 | 冲锋衣滑雪服厂家-冲锋衣定制工厂-滑雪服加工厂-广东睿牛户外(S-GERT) | 爱佩恒温恒湿测试箱|高低温实验箱|高低温冲击试验箱|冷热冲击试验箱-您身边的模拟环境试验设备技术专家-合作热线:400-6727-800-广东爱佩试验设备有限公司 | 北京律师事务所_房屋拆迁律师_24小时免费法律咨询_云合专业律师网 | 曙光腾达官网-天津脚手架租赁-木板架出租-移动门式脚手架租赁「免费搭设」 | 板框压滤机-隔膜压滤机配件生产厂家-陕西华星佳洋装备制造有限公司 | 中央空调温控器_风机盘管温控器_智能_液晶_三速开关面板-中央空调温控器厂家 | 冷库安装厂家_杭州冷库_保鲜库建设-浙江克冷制冷设备有限公司 | 立式壁挂广告机厂家-红外电容触摸一体机价格-华邦瀛 | 过滤器_自清洗过滤器_气体过滤器_苏州华凯过滤技术有限公司 | 数字展示在线_数字展示行业门户网站 | 网站建设,北京网站建设,北京网站建设公司,网站系统开发,北京网站制作公司,响应式网站,做网站公司,海淀做网站,朝阳做网站,昌平做网站,建站公司 | 北京模型公司-工业模型-地产模型-施工模型-北京渝峰时代沙盘模型制作公司 | 德州网站制作 - 网站建设设计 - seo排名优化 -「两山建站」 | 组织研磨机-高通量组织研磨仪-实验室多样品组织研磨机-东方天净 传递窗_超净|洁净工作台_高效过滤器-传递窗厂家广州梓净公司 | 深圳市源和塑胶电子有限公司-首页 | 全自动真空上料机_粉末真空上料机_气动真空上料机-南京奥威环保科技设备有限公司 | nalgene洗瓶,nalgene量筒,nalgene窄口瓶,nalgene放水口大瓶,浙江省nalgene代理-杭州雷琪实验器材有限公司 | 电梯乘运质量测试仪_电梯安全评估测试仪-武汉懿之刻 | 珠海白蚁防治_珠海灭鼠_珠海杀虫灭鼠_珠海灭蟑螂_珠海酒店消杀_珠海工厂杀虫灭鼠_立净虫控防治服务有限公司 | 防火阀、排烟防火阀、电动防火阀产品生产销售商-德州凯亿空调设备有限公司 | 单级/双级旋片式真空泵厂家,2xz旋片真空泵-浙江台州求精真空泵有限公司 | 青岛空压机,青岛空压机维修/保养,青岛空压机销售/出租公司,青岛空压机厂家电话 | 气动球阀_衬氟蝶阀_调节阀_电动截止阀_上海沃托阀门有限公司 | 丹尼克尔拧紧枪_自动送钉机_智能电批_柔性振动盘_螺丝供料器品牌 | 密封无忧网 _ 专业的密封产品行业信息网 |