
600 MySQL - Technische Referenz f¨ur Version 5.0.1-alpha
#include <mysql.h>
#include <stdarg.h>
#include <stdio.h>
#include <stdlib.h>
enum on_error { E_okay, E_warn, E_fail };
static void die(MYSQL *db, char *fmt, ...);
MYSQL *db_connect(const char *dbname);
void db_disconnect(MYSQL *db);
void db_do_Anfrage(MYSQL *db, const char *query, enum on_error on_error);
const char *server_groups[] = { "test_client_SERVER", "server", NULL };
int
main(int argc, char **argv)
{
MYSQL *one, *two;
/* Das muss vor allen weiteren mysql-Funktionen aufgerufen werden.
*
* Sie k¨onnen mysql_server_init(0, NULL, NULL) benutzen,
* was den Server initialisiert und die Gruppen
* groups = { "server", NULL } benutzt.
*
* In Ihre $HOME/.my.cnf-Datei sollten Sie folgendes eintragen:
[test_client_SERVER]
language = /pfad/zur/quelle/von/mysql/sql/share/english
* Nat¨urlich k¨onnen Sie auch argc und argv ¨andern,
* bevor Sie sie an diese Funktion ¨ubergeben.
* Oder erzeugen Sie neue auf jede Art, die Sie wollen.
* Alle Argumente in argv (ausser argv[0], was der Programmname ist)
* m¨ussen allerdings g¨ultige Optionen f¨ur den MySQL-Server sein.
* Wenn Sie diesen Client gegen die normale mysqlclient-
* Bibliothek linken, ist diese Funktion nur ein Stumpf, der nichts tut.
*/
mysql_server_init(argc, argv, server_groups);
one = db_connect("test");
two = db_connect(NULL);
db_do_query(one, "show table status", E_fail);
db_do_query(two, "show databases", E_fail);
mysql_close(two);
Comentarios a estos manuales