您的位置:首页 > 数据库 > MySQL

windows平台下怎样用Turbo c2.0连接mysql数据库

2010-10-03 12:54 393 查看
http://topic.csdn.net/t/20031217/13/2573130.html



/*
Name: MySQLClientTest
Author: Kip Warner (kip@zero47.com)
Date: 24/11/03 13:15
Description: Example to show usage of MySQL databases from client end.
I did not have much time. Sorry...
*/

// Includes...
#include <windows.h>
#include <MySQL/mysql.h>
#include <stdlib.h>
#include <stdio.h>
#include <conio.h>

// Database name...
char g_szHost[] = "localhost ";
UINT g_unPort = MYSQL_PORT;
char g_szUserName[] = "charlieface ";
char g_szPassword[] = "pudgy ";
char g_szDatabase[] = "Candy ";
char g_szSQLStatement[] = "SELECT * chocolates ";

// Entry point...
int main(int nArguments, char *pszArguments[])
{
// Variables...
MYSQL *myDatabase = NULL;
MYSQL_RES *myResult = NULL;
MYSQL_FIELD *myField = NULL;
MYSQL_ROW myRow = NULL;
UINT unRecords = 0;
UINT unFields = 0;
UINT unIndex = 0;
UINT unFieldIndex = 0;

// Initialize MySQL...
myDatabase = mysql_init(NULL);

// Failed...
if(!myDatabase)
{
// Alert user...
printf( "] Error: Unable to initialize MySQL API.../n ");

// Cleanup, abort, terminate...
mysql_close(myDatabase);
getch();
return 0;
}

// Connect to server and check for error...
if(mysql_real_connect(myDatabase, g_szHost, g_szUserName, g_szPassword,
NULL, g_unPort, NULL, 0) != 0)
{
// Alert user...
printf( "] Error: Unable to connect to server.../n ");

// Cleanup, abort, terminate...
mysql_close(myDatabase);
getch();
return 0;
}

// Select database in server and check for error...
if(mysql_select_db(myDatabase, g_szDatabase) < 0)
{
// Alert user...
printf( "] Error: Unable to select database.../n ");

// Cleanup, abort, terminate...
mysql_close(myDatabase);
getch();
return 0;
}

// Query database and check for error...
if(mysql_query(myDatabase, g_szSQLStatement) != 0)
{
// Alert user...
printf( "] Error: Unable to execute query.../n ");

// Cleanup, abort, terminate...
mysql_close(myDatabase);
getch();
return 0;
}

// Retrieve query result from server...
myResult = mysql_store_result(myDatabase);

// Failed...
if(!myResult)
{
// Alert user...
printf( "] Error: Unable to retrieve result.../n ");

// Cleanup, abort, terminate...
mysql_close(myDatabase);
getch();
return 0;
}

// How many records were returned in the result set?

// Calculate...
unRecords = mysql_num_rows(myResult);

// Alert user...
printf( "] Query: %d records found.../n ", unRecords);

// How many fields are present in a record?

// Calculate...
unFields = mysql_num_fields(myResult);

// Alert user...
printf( "] Query: There are %d fields in each record... ", unFields);

// Output records...
for(unIndex = 0; unIndex < unRecords; unIndex++)
{
// Fetch row from results...
myRow = mysql_fetch_row(myResult);

// Fetch fields from row...
myField = mysql_fetch_fields(myResult);

// Show record...
printf( "] Record: %d / %d/n ", unIndex, unRecords);

// Output all fields in this row...
for(unFieldIndex = 0; unFieldIndex < unFields; unFieldIndex++)
{
// Output...
printf( "/t%s ", myField[unFieldIndex].name);
}
}

// Free result...
mysql_free_result(myResult);

// Close server connection...
mysql_close(myDatabase);
myDatabase = NULL;

// Alert user, exit...
printf( "] Done, press any key to exit.../n ");
getch();
return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: