int mysql_options(MYSQL *mysql, enum mysql_option
          option, const char *arg)
        
Beschreibung
Kann verwendet werden, um zusätzliche Verbindungsoptionen einzustellen und das Verhalten einer Verbindung zu beeinflussen. Diese Funktion kann auch mehrmals aufgerufen werden, um mehrere Optionen zu setzen.
          mysql_options() sollte nach
          mysql_init() und vor
          mysql_connect() oder
          mysql_real_connect() aufgerufen werden.
        
          Das option-Argument ist die einzustellende
          Option und das arg-Argument ist ihr Wert.
          Ist die Option ein Integer, so sollte arg
          auf den Wert dieses Integers verweisen.
        
Mögliche Optionswerte:
| Option | Argumenttyp | Funktion | 
| MYSQL_INIT_COMMAND | char * | Befehl, der bei Verbindung mit dem MySQL Server auszuführen ist. Wird bei Neuverbindungen automatisch erneut ausgeführt. | 
| MYSQL_OPT_COMPRESS | Nicht verwendet | Komprimiertes Client/Server-Protokoll soll verwendet werden. | 
| MYSQL_OPT_CONNECT_TIMEOUT | unsigned int * | Verbindungs-Timeout in Sekunden. | 
| MYSQL_OPT_GUESS_CONNECTION | Nicht verwendet | Für eine mit libmysqldverlinkte Anwendung, kann die
                  Bibliothek hiermit erschließen, ob ein Embedded
                  Server oder ein Remote Server verwendet wird.
                  „Erschließen“ bedeutet: Wenn ein
                  Hostname angegeben ist, der nicht auflocalhostlautet, wird ein
                  Remote-Server benutzt. Dieses voreingestellte
                  Verhalten kann mitMYSQL_OPT_USE_EMBEDDED_CONNECTIONundMYSQL_OPT_USE_REMOTE_CONNECTIONaußer Kraft gesetzt werden. Die Option wird von
                  Anwendungen, die mitlibmysqlclientverlinkt sind, ignoriert. | 
| MYSQL_OPT_LOCAL_INFILE | Optionaler Zeiger auf uint | Wenn kein Zeiger angegeben ist oder wenn der Zeiger auf ein unsigned int != 0verweist, wird
                  der BefehlLOAD LOCAL INFILEeingeschaltet. | 
| MYSQL_OPT_NAMED_PIPE | Nicht verwendet | Zur Verbindung mit einem MySQL Server auf NT werden Named Pipes benutzt. | 
| MYSQL_OPT_PROTOCOL | unsigned int * | Der zu verwendende Protokolltyp. Er sollte einer der Enumerationswerte
                  von mysql_protocol_typesein, die
                  inmysql.hdefiniert sind. | 
| MYSQL_OPT_READ_TIMEOUT | unsigned int * | Timeout-Leseoperationen auf dem Server (funktioniert zurzeit nur für Windows und mit TCP/IP-Verbindungen). | 
| MYSQL_OPT_RECONNECT | my_bool * | Aktiviert/deaktiviert die automatische Neuverbindung mit dem Server, wenn die Verbindung abgebrochen war. Die Neuverbindung ist seit MySQL 5.0.3 standardmäßig ausgeschaltet. Diese Option ist neu in 5.0.13 und bietet die Möglichkeit, das Verhalten in Bezug auf Neuverbindungen explizit vorzugeben. | 
| MYSQL_OPT_SET_CLIENT_IP | char * | Für eine Anwendung, die mit libmysqldverlinkt ist
                  (wobeilibmysqldmit
                  Authentifizierungsunterstützung kompiliert wurde),
                  bedeutet dies, dass bei der Authentifizierung davon
                  ausgegangen wird, dass sich der Benutzer von der (als
                  String) angegebenen IP-Adresse aus verbindet. Bei
                  Anwendungen, die mitlibmysqlclientverlinkt sind, wird diese Option ignoriert. | 
| MYSQL_OPT_USE_EMBEDDED_CONNECTION | Nicht verwendet | Für eine Anwendung, die mit libmysqldverlinkt ist,
                  zwingt dies zur Benutzung des Embedded Servers für
                  die Verbindung. Bei Anwendungen, die mitlibmysqlclientverlinkt sind, wird
                  diese Option ignoriert. | 
| MYSQL_OPT_USE_REMOTE_CONNECTION | Nicht verwendet | Für eine Anwendung, die mit libmysqldverlinkt ist,
                  zwingt dies zur Benutzung eines Remote-Servers für
                  die Verbindung. Bei Anwendungen, die mitlibmysqlclientverlinkt sind, wird
                  diese Option ignoriert. | 
| MYSQL_OPT_USE_RESULT | Nicht verwendet | Diese Option wird nicht benutzt. | 
| MYSQL_OPT_WRITE_TIMEOUT | unsigned int * | Timeout für Schreiboperationen auf dem Server (funktioniert zurzeit nur für Windows und mit TCP/IP-Verbindungen). | 
| MYSQL_READ_DEFAULT_FILE | char * | Leseoptionen werden aus der angegebenen Optionsdatei statt aus my.cnfentnommen. | 
| MYSQL_READ_DEFAULT_GROUP | char * | Leseoptionen werden aus der angegebenen Gruppe aus my.cnfoder aus der Datei, die inMYSQL_READ_DEFAULT_FILEangegeben
                  wurde, entnommen. | 
| MYSQL_REPORT_DATA_TRUNCATION | my_bool * | Aktiviert oder deaktiviert die Meldung von Fehlern wegen des
                  Abschneidens von Daten für vorbereitete Anweisungen
                  mit MYSQL_BIND.error.
                  (Standardeinstellung: Deaktiviert.) | 
| MYSQL_SECURE_AUTH | my_bool* | Gibt an, ob eine Verbindung mit einem Server aufgebaut wird, der nicht das Passwort-Hashing von MySQL 4.1.1 und höher unterstützt. | 
| MYSQL_SET_CHARSET_DIR | char* | Der Pfad zu dem Verzeichnis, das die Dateien mit den Zeichensatzdefinitionen enthält. | 
| MYSQL_SET_CHARSET_NAME | char* | Der Name des Zeichensatzes, der als Standard zu verwenden ist. | 
| MYSQL_SHARED_MEMORY_BASE_NAME | char* | Der Name des Shared Memory-Objekts für die Serverkommunikation. Sollte
                  dasselbe sein wie die Option --shared-memory-base-namefür den
                  mysqld-Server, mit dem Sie sich
                  verbinden möchten. | 
          Beachten Sie, dass immer die client-Gruppe
          gelesen wird, wenn Sie
          MYSQL_READ_DEFAULT_FILE oder
          MYSQL_READ_DEFAULT_GROUP benutzen.
        
Die angegebene Gruppe in der Optionsdatei kann folgende Optionen enthalten:
| Option | Beschreibung | 
| connect-timeout | Verbindungs-Timeout in Sekunden. Bei Linux wird dieser Timeout auch verwendet, wenn das System auf die erste Antwort vom Server wartet. | 
| compress | Verwendung des komprimierten Client/Server-Protokolls. | 
| database | Wenn im Verbindungsbefehl keine Datenbank angegeben wurde, wird diese verwendet. | 
| debug | Debuggingoptionen. | 
| disable-local-infile | Deaktiviert LOAD DATA LOCAL. | 
| host | Standardhostname. | 
| init-command | Befehl, der bei Verbindung mit dem MySQL Server ausgeführt wird. Wird bei Neuverbindung automatisch erneut ausgeführt. | 
| interactive-timeout | Dasselbe wie CLIENT_INTERACTIVEmitmysql_real_connect(). Siehe
                  Abschnitt 24.2.3.51, „mysql_real_connect()“. | 
| local-infile[=(0|1)] | Wenn kein Argument oder argument != 0 vorhanden ist, wird LOAD
                  DATA LOCALaktiviert. | 
| max_allowed_packet | Maximalgröße der Pakete, die der Client vom Server lesen kann. | 
| multi-results | Mehrfachergebnismengen von Mehrfachanweisungen oder mehrfach gespeicherten Prozeduren sind zulässig. | 
| multi-statements | Client darf mehrere Anweisungen in einem einzigen String senden
                  (getrennt durch ‘ ;’). | 
| password | Standardpasswort. | 
| pipe | Zur Verbindung mit einem MySQL Server auf NT werden Named Pipes benutzt. | 
| protocol={TCP|SOCKET|PIPE|MEMORY} | Das Protokoll für die Serververbindung. | 
| port | Standardportnummer. | 
| return-found-rows | Lässt mysql_info()bei einemUPDATEdie gefundenen anstatt der
                  aktualisierten Zeilen zurückgeben. | 
| shared-memory-base-name= | Shared Memory-Name für die Serververbindung (Standardwert ist "MYSQL"). | 
| socket | Standardsocketdatei. | 
| user | Standardbenutzer. | 
          Beachten Sie, dass timeout zwar durch
          connect-timeout ersetzt, aber
          timeout in MySQL 5.1.5-alpha aus
          Gründen der Abwärtskompatibilität immer noch unterstützt
          wird.
        
Weitere Informationen über Optionsdateien finden Sie unter Abschnitt 4.3.2, „my.cnf-Optionsdateien“.
Rückgabewerte
Bei Erfolg null und bei Verwendung einer unbekannten Option ein von null verschiedener Wert.
Beispiel
MYSQL mysql;
mysql_init(&mysql);
mysql_options(&mysql,MYSQL_OPT_COMPRESS,0);
mysql_options(&mysql,MYSQL_READ_DEFAULT_GROUP,"odbc");
if (!mysql_real_connect(&mysql,"host","user","passwd","database",0,NULL,0))
{
    fprintf(stderr, "Failed to connect to database: Error: %s\n",
          mysql_error(&mysql));
}
          Dieser Code veranlasst den Client, das komprimierte
          Client/Server-Protokoll zu verwenden und die zusätzlichen
          Optionen aus dem Abschnitt odbc der Datei
          my.cnf zu lesen.
        
Dies ist eine Übersetzung des MySQL-Referenzhandbuchs, das sich auf dev.mysql.com befindet. Das ursprüngliche Referenzhandbuch ist auf Englisch, und diese Übersetzung ist nicht notwendigerweise so aktuell wie die englische Ausgabe. Das vorliegende deutschsprachige Handbuch behandelt MySQL bis zur Version 5.1.

