Step 3. 在「VC6」、「Tools」、「Options」、「Directories」分別加入需使用的MySQL的函數庫的include、lib目錄。
在Show directories for選擇include files,新增"C:\Program Files\MySQL\MySQL Server 5.1\INCLUDE"。
在Show directories for選擇Library files,新增"C:\Program Files\MySQL\MySQL Server 5.1\LIB\DEBUG" or "C:\Program Files\MySQL\MySQL Server 5.1\LIB\OPT"。
程式如下
#include <winsock.h>
#include <mysql.h>
#include <windows.h>
#pragma comment(lib, "libmysql.lib")
BOOL main(int argc, TCHAR* argv[])
{
unsigned short Port = 3306;
char *IPAddress = "localhost";
char *UserName = "root";
char *Password = "51685168";
char *DBName = "stock";
unsigned long i;
printf("Start... \n");
MYSQL *ssock;
MYSQL_RES *res;
MYSQL_ROW row;
ssock = (MYSQL *)malloc(sizeof(MYSQL));
//在某些版本中,不需要初始化工作,可查看mysql.H以及readme
/*mysql_init(ssock);
if(ssock == NULL)
{
printf("EROR: MySQL ssock init error. \n");
return FALSE;
}*/
ssock = mysql_init(NULL);
if(!ssock)
{
printf("EROR: MySQL ssock init error. \n");
return EXIT_FAILURE;
}
printf("MySQL ssock init OK. \n");
//建立與資料庫的連結
ssock = mysql_real_connect(ssock, IPAddress, UserName, Password, NULL, Port, NULL, 0);
if(!ssock)
{
printf("conn fail... \n");
unsigned int mtint = mysql_errno(ssock);
return FALSE;
}
printf("MySQL connnect OK... \n");
mysql_set_character_set(ssock, "uft8");
//連結指定的資料庫
if(mysql_select_db(ssock, DBName) != 0)
{
printf("select db error. \n");
return FALSE;
}
printf("select db OK. \n");
//利用SQL語法查詢目前資料庫的版本
printf("version=%d \n", mysql_get_server_version(ssock));
//SQL查詢語法
if(mysql_query( ssock, "SELECT * FROM otc LIMIT 10"))
{
printf("mysql_query() Error, %s\n", mysql_error(ssock));
}
if( !(res = mysql_store_result(ssock)) )
{
printf("mysql_store_result() Error, %s\n", mysql_error(ssock));
}
while( (row = mysql_fetch_row(res)) )
{
for(i=0 ; i<mysql_num_fields(res); i++)
{
printf("%s ",row[i]);
}
printf("\n");
}
//釋放資料庫連線
mysql_free_result(res);
//關閉資料庫
mysql_close(ssock);
printf("End... \n");
return TRUE;
}
沒有留言:
張貼留言