Click here to Skip to main content
Click here to Skip to main content

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.

Comments and Discussions

 
GeneralMySQL with TEXT type columns PinmemberAlexEvans6-Jul-07 12:53 
General2 dialogs Pinmembersongdongemdem7-Feb-07 11:36 
Generaldata migration from MS-SQL to MySQL PinmemberAlexEvans9-Oct-06 20:25 
Generalcode Pinmembergourav4565-Jun-06 19:46 
GeneralROW Pinmembergourav4565-Jun-06 19:23 
Questionmysql.dll - how to install it properly? Pinmembermimosa18-Mar-06 12:41 
Generalmysql_real_connect() PinmemberHervy9-Feb-06 4:13 
GeneralRe: mysql_real_connect() Pinmemberonlykeshu8-Mar-06 19:36 
Generalplz help me Pinmembersyed abbdul qavi26-Jan-06 8:36 
GeneralRe: plz help me Pinmembersath15413-Jul-06 23:22 
General"mysql_com.h" not work correct PinmemberLe Khac Chinh8-Feb-04 15:18 
GeneralRe: "mysql_com.h" not work correct PinsussAnonymous25-Jun-05 5:47 
QuestionYour example project ??? Pinmemberserup5-Dec-03 2:24 
GeneralDBF to MySQL Pinmembersantu5-Aug-03 1:55 
GeneralRe: DBF to MySQL Pinmemberfoolzz22-Apr-04 20:36 
GeneralRe: DBF to MySQL Pinmembersiswoyo2-Nov-13 20:08 
GeneralWhy I rated your article low. PinmemberMichael A. Barnhart9-Aug-02 8:45 
Questionusing with WTL? PinmemberMyself9-Aug-02 8:20 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    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 | Mobile
Web04 | 2.8.140827.1 | Last Updated 9 Aug 2002
Article Copyright 2002 by Victor M. Valenzuela
Everything else Copyright © CodeProject, 1999-2014
Terms of Service
Layout: fixed | fluid