本文目錄一覽:
怎麼用visual studio打開mysql源碼
1.下載
mysql++-3.1.0.tar.gz,解壓,如:c:\mysql++-3.1.0
2、mysql++-3.1.0
目錄下進入相應
Visual
Studio
版本(VS2003,VS2005,VS2008。VS2010可以使用VS2008),打開解決方案,這裡以VS2008為例。
3、把mysql++設為啟動項目,生成時可能會報錯:錯誤為「無法打開libmysql.lib」
4、在mysql安裝目錄下找到libmysql.lib,複製到
C:\Program
Files\Microsoft
Visual
Studio
9.0\VC\lib
(這裡以VS2008為例),再次生成成功。
5、設置
resetdb
為啟動項,如果生成成功,則說明OK。
6、把
c:\mysql++-3.1.0\vc2008\Debug
目錄下的
mysqlpp_d.dll、mysqlpp_d.lib、libmysql.dll、libmysql.lib
四個文件和
c:\mysql++-3.1.0\lib目錄
拷貝到放置到新項目的根目錄下。
7、右鍵新項目的屬性——配置屬性——鏈接器——輸入——附加依賴項——添加
mysqlpp_d.lib
libmysql.lib
8、測試代碼:
#include
iostream
#include
string
#include
cstdlib
#include
“mysql++.h”
using
namespace
std;
int
main()
{
mysqlpp::Connection
con(false);
con.set_option(new
mysqlpp::SetCharsetNameOption(“gbk”));
cout
“請輸入資料庫(root用戶)連接密碼:”;
string
pwd;
getline(cin,
pwd);
if
(!con.connect(“tot”,
“localhost”,
“root”,
pwd.c_str()))
{
cout
“無法連接,請檢查密碼是否正確!”
endl;
return
-1;
}
vc中文顯示亂碼
CString類支持編碼轉換,使用CString完全沒有必要使用MultiByteToWideChar,因為這裡面已經內置的轉換了。
如果你的工程是UNICODE模式,那麼str=charpoint的時候,轉換就已經發生。如果不是,那麼只要資源中指定中文字符集,那麼顯示多位元組的中文也是沒有問題的。
CString類的源碼如下:
#ifdef _UNICODE
const CString CString::operator=(LPCSTR lpsz)
{
int nSrcLen = lpsz != NULL ? lstrlenA(lpsz) : 0;
AllocBeforeWrite(nSrcLen);
_mbstowcsz(m_pchData, lpsz, nSrcLen+1);//這個就是MultiByteToWideChar
ReleaseBuffer();
return *this;
}
#else //!_UNICODE
const CString CString::operator=(LPCWSTR lpsz)
{
int nSrcLen = lpsz != NULL ? wcslen(lpsz) : 0;
AllocBeforeWrite(nSrcLen*2);
_wcstombsz(m_pchData, lpsz, (nSrcLen*2)+1);
ReleaseBuffer();
return *this;
}
#endif //!_UNICODE
建議你,還是檢查一下MYSQL裡面保存的字元串,是如何定義的欄位屬性,從這裡查起。
MySQL安裝時applying security settings出錯怎麼辦
MySQL安裝時applying security settings出錯,是設置錯誤造成的,解決方法如下:
1、首先下載nysql的yum倉庫源,不是源碼包或者其它的rpm包。
2、然後找和自己操作系統匹配的版本進行下載。
3、然後使用rpm -ivh mysql57-community-release-el6-11.noarch.rpm 命令進行安裝,完成之後檢查是否會生成repo文件。
4、使用yum install mysql-community-server進行安裝mysql。
5、最後啟動mysql服務[root@localhost ~]# service mysqld startStarting mysqld:。
如何查看mySQL的源代碼
給你個過來人的建議。兩個方式入手。
1、利用他。儘可能從大模塊開始,用你的代碼,去調用他。這是從功能特性角度,去理解各個模塊的作用。這非常容易加深你對應用它的理解。
2、在代碼中插入LOG,檢測代碼運行流程。
如果你只是靜態的看代碼,這個不現實的。
如果你想看一部分代碼。首先你要想辦法讓這套代碼RUN起來,如果你使用任何方式都無法讓這段代碼運行,我只能說,這段代碼沒有存在價值。為什麼在裡面,當然更大的可能是,你沒找到開啟它的方法。
動態分析法,是門學問。包括對運行態才出現BUG的系統進行DEBUG,當然不是GDB或者VC的F5模式。不過貌似學校沒有這類教學。很工程的東西。我也只是經驗所得。沒有系統的理論化。
例如一套系統,你在不改代碼的情況下,要能找到問題。甚至不能加LOG代碼,只能通過反饋判斷。不是不可能的。甚至有時必須這麼做。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/219787.html