MySQL數(shù)據(jù)庫(kù)的正確安裝調(diào)試與VC實(shí)現(xiàn)很簡(jiǎn)單
此文章主要向大家講述的是MySQL數(shù)據(jù)庫(kù)的正確安裝調(diào)試與VC實(shí)現(xiàn)的實(shí)際操作步驟,調(diào)試此Demo需要主要是將目錄里的mydb子目錄復(fù)制到MySQL(和PHP搭配之最佳組合)的安裝目錄data子目錄下。
我的是:D:Program FilesMySQL(和PHP搭配之最佳組合)MySQL(和PHP搭配之最佳組合) Server 5.0data
摘要:本文詳細(xì)闡述了如何進(jìn)行MySQL(和PHP搭配之最佳組合)的安裝、調(diào)試,以及如何用VC進(jìn)行編譯,實(shí)現(xiàn)數(shù)據(jù)的“添加、修改、刪除”等功能。
MySQL數(shù)據(jù)庫(kù)的安裝調(diào)試和VC實(shí)現(xiàn)(圖一)" width="510" height="417" />
OWASP要素增強(qiáng)Web應(yīng)用程序安全(2)
“惡搞”盜用你無線網(wǎng)絡(luò)的鄰居
如何入侵jsp(SUN企業(yè)級(jí)應(yīng)用的首選)網(wǎng)站
黑客知識(shí):如何隱藏 PHP文件后門的技
jsp(SUN企業(yè)級(jí)應(yīng)用的首選)+javabean學(xué)習(xí)(二)
Java入門視頻教程-第61講
OWASP 10要素增強(qiáng)Web應(yīng)用程序安全(1
什么是asp木馬
如何在Windows Server 2003中安裝Java
Web 2.0網(wǎng)站安全堪憂 JavaScript恐引
一、MySQL(和PHP搭配之最佳組合)的安裝
可以考慮安裝MySQL(和PHP搭配之最佳組合)-5.0.41-win32(可到http://down.ddvip.com/view/11509967813389.html處下載),當(dāng)然你有更新的版本更好,注意選擇“完全安裝”(只有這樣才會(huì)安裝VC編譯時(shí)需要的頭文件等)。安裝后期會(huì)進(jìn)行服務(wù)器配置,你可以設(shè)置你的服務(wù)器登陸密碼,也可以不設(shè)置密碼。
二、VC6.0的設(shè)置
(1)打開VC6.0 工具欄Tools菜單下的Options選項(xiàng),在Directories的標(biāo)簽頁(yè)中右邊的“Show directories for:”下拉列表中選中“Includefiles”,然后在中間列表框中添加你本地安裝MySQL(和PHP搭配之最佳組合)的include目錄路徑。(我的是D:Program FilesMySQL數(shù)據(jù)庫(kù)MySQL(和PHP搭配之最佳組合) Server 5.0include)。
(2)在上面說到的“Show directories for:”下拉列表中選中“Library files”,然后添加你本地安裝MySQL(和PHP搭配之最佳組合)的Lib目錄路徑。Lib目錄下還有debug和opt兩個(gè)目錄,建議選debug。(我的是D:Program FilesMySQL(和PHP搭配之最佳組合)MySQL(和PHP搭配之最佳組合) Server 5.0libdebug)。
(3)在“Project settings->Link:Object/library modules”里面添加“libMySQL(和PHP搭配之最佳組合).lib”。
(4)在stdafx.h里面添加如下的內(nèi)容:
百度i貼吧 新浪微博 #include "MySQL(和PHP搭配之最佳組合).h"
#include "winsock.h"
#pragma comment(lib,"libMySQL(和PHP搭配之最佳組合).lib")
(5)建議將“libMySQL(和PHP搭配之最佳組合).lib、libMySQL(和PHP搭配之最佳組合).dll”拷到你所建的工程的目錄下。
三、數(shù)據(jù)庫(kù)、表的創(chuàng)建
打開“開始->所有程序->MySQL(和PHP搭配之最佳組合)->MySQL(和PHP搭配之最佳組合) Server 5.0->MySQL(和PHP搭配之最佳組合) Command Line Client.exe”,如果沒有設(shè)置密碼就直接按回車,會(huì)提示服務(wù)器啟動(dòng)成功。
MySQL(和PHP搭配之最佳組合)> SHOW DATABASES;//顯示所有的數(shù)據(jù)庫(kù),注意一定要 敲“;”后再按回車
MySQL(和PHP搭配之最佳組合)> CREATE DATABASE mydb;//創(chuàng)建數(shù)據(jù)庫(kù)mydb
MySQL(和PHP搭配之最佳組合)> USE mydb;//選擇你所創(chuàng)建的數(shù)據(jù)庫(kù)mydb
MySQL(和PHP搭配之最佳組合)> SHOW TABLES; //顯示數(shù)據(jù)庫(kù)中的表
MySQL(和PHP搭配之最佳組合)> CREATE TABLE mytable (username VARCHAR(100), visitelist VARCHAR(200),
remark VARCHAR(200));//創(chuàng)建一個(gè)表mytable: 用戶名;訪問列表;備注
MySQL數(shù)據(jù)庫(kù)> DESCRIBE mytable;//顯示表的結(jié)構(gòu)
四、VC編程
MySQL(和PHP搭配之最佳組合) MySQL(和PHP搭配之最佳組合); //數(shù)據(jù)庫(kù)連接句柄
MySQL(和PHP搭配之最佳組合)_init (&MySQL(和PHP搭配之最佳組合));
if(!MySQL(和PHP搭配之最佳組合)_real_connect(&MySQL(和PHP搭配之最佳組合),"localhost","root",NULL,"mydb",3306,NULL,0))
{//mydb為你所創(chuàng)建的數(shù)據(jù)庫(kù),3306為端口號(hào),可自行設(shè)定
AfxMessageBox("數(shù)據(jù)庫(kù)連接失敗");
return FALSE;
}
(1)實(shí)現(xiàn)添加 功能
CString strUsername,strList,strRemark,strSQL;
strSQL.Format("insert into mytable(username,visitelist,remark) values(''%s'',''%s'',''%s'')",
strUsername,strList,strRemark);//注意一定要寫在一行,而且必須要有''''
if(MySQL(和PHP搭配之最佳組合)_real_query(&MySQL數(shù)據(jù)庫(kù),(char*)(LPCTSTR)strSQL,(UINT)strSQL.GetLength())!=0){
AfxMessageBox("增添失敗");
}
2)實(shí)現(xiàn)修改功能CString strUsername,strList,strRemark,strSQL,str_PreName;//str_PreName用于記錄想要修改的行,詳情請(qǐng)看源代碼
strSQL.Format("update mytable set username=''%s'',visitelist=''%s'',
remark=''%s'' where username=''%s''",strUsername,strList,strRemark,str_PreName);
if(MySQL(和PHP搭配之最佳組合)_real_query(&MySQL(和PHP搭配之最佳組合),(char*)(LPCTSTR)strSQL,(UINT)strSQL.GetLength())!=0){
AfxMessageBox("修改失敗");
}
(3)實(shí)現(xiàn)刪除功能
CString strSQL;
strSQL.Format("delete from mytable where username=''%s''",str_PreName);//必須要有''''
if(MySQL(和PHP搭配之最佳組合)_real_query(&MySQL(和PHP搭配之最佳組合),(char*)(LPCTSTR)strSQL,(UINT)strSQL.GetLength())!=0){
AfxMessageBox("刪除失敗");
}
(4)讀取表格內(nèi)容到CListCtrl控件m_list
m_list.DeleteAllItems();
char *ch_query;
ch_query="select * from mytable";
if(MySQL(和PHP搭配之最佳組合)_real_query(&MySQL(和PHP搭配之最佳組合),ch_query,(UINT)strlen(ch_query))!=0){
AfxMessageBox("數(shù)據(jù)庫(kù)中表格出錯(cuò)");
}
CString str;
MySQL(和PHP搭配之最佳組合)_RES *result;
MySQL(和PHP搭配之最佳組合)_ROW row;
if(!(result=MySQL(和PHP搭配之最佳組合)_use_result(&MySQL(和PHP搭配之最佳組合)))){
AfxMessageBox("讀取數(shù)據(jù)集失敗");
}
int i=0;
while(row=MySQL(和PHP搭配之最佳組合)_fetch_row(result)){
str.Format("%s",row[0]);
m_list.InsertItem(i,str);
str.Format("%s",row[1]);
m_list.SetItemText(i,1,str);
str.Format("%s",row[2]);
m_list.SetItemText(i,2,str);
i++;
}
MySQL數(shù)據(jù)庫(kù)_free_result(result);
(5)關(guān)閉數(shù)據(jù)庫(kù)
MySQL(和PHP搭配之最佳組合)_close(&MySQL(和PHP搭配之最佳組合));//最好寫到OnDestroy()函數(shù)中
五、結(jié)束語(yǔ)
本文在幾位網(wǎng)友的工作基礎(chǔ)上詳細(xì)介紹了MySQL(和PHP搭配之最佳組合)的安裝、調(diào)試,以及如何用VC進(jìn)行編譯,實(shí)現(xiàn)數(shù)據(jù)的“添加、修改、刪除”等功能,可以為在MySQL(和PHP搭配之最佳組合)的VC編程中感到困惑的朋友們提供一點(diǎn)幫助,在此向幾位網(wǎng)友表示感謝!
【編輯推薦】
- MySQL5中的字符集問題與破解方案
- MySQL全文搜索索引的字段作用
- MySQL EMS亂碼的正確解決
- MySQL表索引為什么會(huì)遭破壞?
- MySQL鏡像數(shù)據(jù)庫(kù)的正確建立在linux之下