Hov, det fik jeg vidst aldrig lagt ud.. men her er hvordan du gør det i C:
MySQL API C
1) Installer MySQL Serveren. 2) Gå ind i Project 3) Gå ind i Settings 4) Gå ind under fanebladet Link 5) Vælg i tappen Category "Input" 6) Gå ned i "Additinoal library path" 7) Tilføj linjen "C:\mysql\lib\debug" 8) Gå op i boxen Category igen og vælg "General" 7) Gå ned i feltet "Object/Library" og tilføj "libmySQL.lib" og "ws2_32.lib " 9) Vælg fanebladet "C++". 10) Vælg Preprocessor i selectboxen Category 11) Tilføj "C:\mysql\include" i Additional Include Directories 12) Kopier filen C:\mysql\lib\debug\libmySQL.dll til det debug bibliotek hvor din .exe fil ligger.
Koden:
#define SOCKET int #include <stdio.h> #include <stdlib.h> #include <mysql.h>
int main() { /* connection */ MYSQL *handle; /* query result */ MYSQL_RES *result; /* række i query result */ MYSQL_ROW row; /* antal feltveer i query result */ int nfields; /* pointer til array med felt længder i række i query resuult */ int *l; /* counter */ int i; /* * åben connection til: * server = "localhost" * username = "root" * password = "" * database = "Test" * port = 0 (bliver opfattet som default 3306) */ handle= mysql_init(NULL); if(handle == NULL) { printf("MySQL error: %s", mysql_error(handle)); exit(1); } if(!mysql_real_connect(handle, "localhost", "root", "", "Test", 0, NULL, 0)) { printf("MySQL error: %s", mysql_error(handle)); exit(1); } /* udfør query */ mysql_query(handle, "SELECT * FROM t1"); result = mysql_store_result(handle); /* print resultat af query */ nfields = mysql_num_fields(result); while ((row = mysql_fetch_row(result))) { l = (int *)mysql_fetch_lengths(result); for (i=0; i<nfields; i++) { printf(" %.*s", l[i], row[i] ? row[i] : "NULL"); } printf("\n"); } /* luk query */ mysql_free_result(result); /* luk connection */ mysql_close(handle); return 0; }
// MySQL API MFCDlg.cpp : implementation file // // Forudsætninger: /* 1) Installer MySQL Serveren. 2) Gå ind i Project 3) Gå ind i Settings 4) Gå ind under fanebladet Link 5) Vælg i tappen Category "Input" 6) Gå ned i "Additinoal library path" 7) Tilføj linjen "C:\mysql\lib\debug" 8) Gå op i boxen Category igen og vælg "General" 7) Gå ned i feltet "Object/Library" og tilføj "libmySQL.lib" og "ws2_32.lib " 9) Vælg fanebladet "C++". 10) Vælg Preprocessor i selectboxen Category 11) Tilføj "C:\mysql\include" i Additional Include Directories 12) Kopier filen C:\mysql\lib\debug\libmySQL.dll til det debug bibliotek hvor din .exe fil ligger.
Tilføj et multiline tekstfelt og tildel det membervariablen m_Text1 */
#include "stdafx.h"
#define SOCKET int #include <stdio.h> #include <stdlib.h> #include <mysql.h>
#include "MySQL API MFC.h" #include "MySQL API MFCDlg.h"
// Set the icon for this dialog. The framework does this automatically // when the application's main window is not a dialog SetIcon(m_hIcon, TRUE); // Set big icon SetIcon(m_hIcon, FALSE); // Set small icon
// TODO: Add extra initialization here
return TRUE; // return TRUE unless you set the focus to a control }
// If you add a minimize button to your dialog, you will need the code below // to draw the icon. For MFC applications using the document/view model, // this is automatically done for you by the framework.
void CMySQLAPIMFCDlg::OnPaint() { if (IsIconic()) { CPaintDC dc(this); // device context for painting
// Center icon in client rectangle int cxIcon = GetSystemMetrics(SM_CXICON); int cyIcon = GetSystemMetrics(SM_CYICON); CRect rect; GetClientRect(&rect); int x = (rect.Width() - cxIcon + 1) / 2; int y = (rect.Height() - cyIcon + 1) / 2;
// Draw the icon dc.DrawIcon(x, y, m_hIcon); } else { CDialog::OnPaint(); } }
// The system calls this to obtain the cursor to display while the user drags // the minimized window. HCURSOR CMySQLAPIMFCDlg::OnQueryDragIcon() { return (HCURSOR) m_hIcon; }
void CMySQLAPIMFCDlg::OnOK() { // TODO: Add extra validation here
/* connection */ MYSQL *handle;
/* query result */ MYSQL_RES *result;
/* række i query result */ MYSQL_ROW row;
/* antal feltveer i query result */ int nfields;
/* pointer til array med felt længder i række i query resuult */ int *l;
/* counter */ int i;
char *server; char *username; char *password; char *database; int port;
/* åben connection til: */ server = "localhost"; username = "root"; password = ""; database = "Test"; port = 0; //(bliver opfattet som default 3306)
Lige for at bryde ind... Hvordan kan jeg bruge MySql++ API'et via Borland C++ Builder 6 hvor jeg har brug for at sætte min information ind i en MySql-db men samtidig kunne vise det i et DBGrid (via en TTable/TSource-komponent)?
Tak for hjælpen Jesper
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.