Click here to Skip to main content
12,398,181 members (49,281 online)
Click here to Skip to main content
Add your own
alternative version

Stats

122.9K views
5.7K downloads
42 bookmarked
Posted

MFC and MySQL

, 8 Aug 2002
Rate this:
Please Sign up or sign in to vote.
MFC classes to fill ComoBoxes & ListBoxes with MySQL data.

Sample Image - DlgMySql.jpg

Introduction

This article explains how to get connected to MySQL database and retrieve data using the MySQL C++ API.

The sample uses the classes CMySqlLstBox, CMySqlCboBox: very simple C++ classes derived from the standard MFC classes CListBox and CComboBox with the addition of minimal functionality to permit connection to a MySQL database.

MySQL C++ API

To obtain the MySQL C++ API, please visit the MySql web site for detailed information.

Target

Develop Windows clients to the MySQL database in MFC using the MySQL C++ API.

Includes

#include "iostream"
#include "iomanip"
#include "mysql++" // Part of the MySQL C++ API

See the include file: usr_mysql.h.

Used Libraries

  • libmySQL.lib
  • mysql++.lib

Used Dll

libmySQL.dll

Simple Database

The sample access is a small table called paises which contains a list of countries.

This is the sample SQL script to generate the table:

DROP TABLE IF EXISTS paises;
CREATE TABLE paises (
CodPais tinyint(4) NOT NULL auto_increment,
Nombre varchar(40) default NULL,
Prefijo tinyint(4) default NULL,
Code char(2) NOT NULL default '',
PRIMARY KEY (CodPais)
) TYPE=MyISAM;

Use

  1. Include the files:
    #include "MySqlCboBox.h" // For Using Combo Boxes
    #include "MySqlLstBox.h" // For Using List Boxes
  2. Use Class Wizard to add member variables to your Dialog.
  3. Change in the AFX_DATA section:
    • Replace CListBox to CMySqlLstBox
    • Replace CComboBox to CMySqlCboBox
  4. In the OnInitDialog, call the CMySqlLstBox or/and CMySqlCboBox member:
    FillData(Field Name in the table from get the data,
    Field Name in the table from get the code,
    TableName,
    Where contition for the query,if needed)

    To fill the controls with the database records.

Remarks

Remember to change your Project Settings to point to the MySQL include files and the MySQL libs.

License

This article has no explicit license attached to it but may contain usage terms in the article text or the download files themselves. If in doubt please contact the author via the discussion board below.

A list of licenses authors might use can be found here

Share

About the Author

Victor M. Valenzuela
Web Developer
Spain Spain
Now, I works for Aurigae S.A a spanish services enterprise, specialized on information technologies for critical mission applications, mainly in the areas of payment system management, stock trading and telecommunications.

You may also be interested in...

Comments and Discussions

 
GeneralMySQL with TEXT type columns Pin
AlexEvans6-Jul-07 12:53
memberAlexEvans6-Jul-07 12:53 
General2 dialogs Pin
songdongemdem7-Feb-07 11:36
membersongdongemdem7-Feb-07 11:36 
Generaldata migration from MS-SQL to MySQL Pin
AlexEvans9-Oct-06 20:25
memberAlexEvans9-Oct-06 20:25 
Generalcode Pin
gourav4565-Jun-06 19:46
membergourav4565-Jun-06 19:46 
GeneralROW Pin
gourav4565-Jun-06 19:23
membergourav4565-Jun-06 19:23 
Questionmysql.dll - how to install it properly? Pin
mimosa18-Mar-06 12:41
membermimosa18-Mar-06 12:41 
Generalmysql_real_connect() Pin
Hervy9-Feb-06 4:13
memberHervy9-Feb-06 4:13 
GeneralRe: mysql_real_connect() Pin
onlykeshu8-Mar-06 19:36
memberonlykeshu8-Mar-06 19:36 
Generalplz help me Pin
syed abbdul qavi26-Jan-06 8:36
membersyed abbdul qavi26-Jan-06 8:36 
GeneralRe: plz help me Pin
sath15413-Jul-06 23:22
membersath15413-Jul-06 23:22 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.

| Advertise | Privacy | Terms of Use | Mobile
Web02 | 2.8.160721.1 | Last Updated 9 Aug 2002
Article Copyright 2002 by Victor M. Valenzuela
Everything else Copyright © CodeProject, 1999-2016
Layout: fixed | fluid