©SQL :: Manager
HomeProgramm-InformationenTechnische DetailsKostenloser DownloadKaffee für den Autor
Netzwelt
MySQL, MariaDB SQL-Modus bearbeiten - sql_mode

Bearbeiten des SQL-Modus für Server und Programm (MySQL / MariaDB - sql_mode)

SQL-Modus Das SQL-Modus-Modul ist Teil der Server-Verwaltung
MySQL und MariaDB SQL-Modus
Modul zum Setzen des SQL-Modus in MySQL und MariaDB-Datenbanken, global und auf Session-Ebene
Die Einstellungen auf Session-Ebene können auch im SQL-Editor gesetzt werden.

Global Ansicht des derzeit gesetzten SQL-Modus-Werte und Auswahl für globales Setzen auf dem SQL-Server.
Session Ansicht und Auswahl des gespeicherten SQL-Modus für den MyWAY SQL-Manager.
Wert Mögliche Werte für die sql_mode-Variable.
Beschreibung Beschreibung der Funktion.

Globale Einstellungen:
Änderungen global speichern: SQL-Modus global für Server und alle Clients setzen.

Session-Einstellungen:
Änderungen für Sessions speichern: SQL-Modus für den MyWAY SQL-Manager im Benutzer-Account speichern und setzen.
Session-Einstellungen löschen: Gespeicherte Einstellungen des SQL-Modus im Benutzer-Account des MyWAY SQL-Managers löschen.

Optionen für Session:
Nur in SQL-Anweisungen anwenden: Der SQL-Modus wird nur für SQL-Anweisungen im SQL-Editor auf Datenbank- oder Server-Ebene gesetzt.
Global im Programm anwenden: Der SQL-Modus wird für alle Aktionen des MyWAY SQL-Managers gesetzt.
Nur für diese Session anwenden: Der SQL-Modus wird nur die aktuelle Programm-Session des Benutzers gesetzt.
Bei Programm-Neustart verfällt die Einstellung.
Auch für zukünftige Session speichern: Der SQL-Modus wird auch für zukünftige Programm-Sessions des Benutzers gespeichert und gesetzt.
Verfügbare Werte für SQL-Modus in MySQL und MariaDB:
ALLOW_INVALID_DATESDer Datentyp DATE darf in der Tageskomponente einen beliebigen Wert im Bereich von 1 bis 31 haben, auch wenn es sich nicht um ein gültiges Datum handelt.
ANSI_QUOTESDas Zeichen " wird zum Bezeichner-Anführungszeichen anstelle des Zeichens `.
EMPTY_STRING_IS_NULLLeere Zeichenfolgen werden aus Gründen der Oracle-Kompatibilität wie NULL behandelt.
ERROR_FOR_DIVISION_BY_ZEROEs wird ein Fehler ausgegeben, wenn eine Zahl durch Null geteilt wird. Andernfalls wird NULL zurückgegeben.
EXTENDED_ALIASESAliase funktionieren ähnlich wie Aliase in Sybase SQL Anywhere. Aliase werden in der SELECT-Liste und der WHERE-Klausel aufgelöst. Aliase können in der SELECT-Liste verwendet werden, bevor der Alias ​​definiert wird.
HIGH_NOT_PRECEDENCEDie Priorität des NOT-Operators wird erhöht, sodass NOT A BETWEEN B AND C als (NOT A) BETWEEN B AND C interpretiert wird.
IGNORE_BAD_TABLE_OPTIONSFehlerhafte Tabellenoptionen, die für die Anweisungen CREATE TABLE oder ALTER TABLE bereitgestellt werden, führen zu Warnungen anstelle von Fehlern.
IGNORE_SPACELeerzeichen dürfen zwischen Funktionsnamen und Klammern angegeben werden. Dabei werden die Namen integrierter Funktionen zu reservierten Wörtern.
NO_AUTO_CREATE_USEREs wird verhindert, dass die GRANT-Anweisung automatisch einen Benutzer erstellt, außer die Anweisung enthält auch Informationen wie ein Passwort oder ein Authentifizierungs-Plugin.
NO_AUTO_VALUE_ON_ZERODer Wert 0 wird nicht auf die gleiche Weise wie NULL für AUTO_INCREMENT-Spalten interpretiert, sondern wird als tatsächliche 0 behandelt.
NO_BACKSLASH_ESCAPESDie Verwendung des Backslash-Zeichens als Escape-Zeichen innerhalb von Zeichenfolgen ist nicht zulässig. Stattdessen ist es nur ein normales Zeichen.
NO_DIR_IN_CREATEDie Tabellenoptionen DATA DIRECTORY und INDEX DIRECTORY werden in den Anweisungen CREATE TABLE und ALTER TABLE ignoriert.
NO_ENGINE_SUBSTITUTIONEine Speicher-Engine kann nicht durch den Standardmodus ersetzt werden. Bei fehlerhafter Angabe wird ein Fehler ausgegeben.
NO_FIELD_OPTIONSEs wird verhindert, dass die SHOW CREATE TABLE-Anweisung MariaDB-spezifische Spaltenoptionen druckt.
NO_KEY_OPTIONSEs wird verhindert, dass die SHOW CREATE TABLE-Anweisung MariaDB-spezifische Indexoptionen druckt.
NO_TABLE_OPTIONSEs wird verhindert, dass die SHOW CREATE TABLE-Anweisung MariaDB-spezifische Tabellenoptionen druckt.
NO_UNSIGNED_SUBTRACTIONEs werden für Subtraktionsergebnisse vorzeichenbehaftete Datentypen verwendet, auch wenn die Operanden vorzeichenlose Datentypen enthalten.
NO_ZERO_DATE0000-00-00 wird als gültiger Wert für den Datentyp DATE verboten.
NO_ZERO_IN_DATEEs wird verhindert, dass der Datentyp DATE für die Jahreskomponente einen Wert ungleich Null hat, wenn das Datum für die Monats- oder Tages-Komponenten Nullwerte hat.
ONLY_FULL_GROUP_BYDie Auswahl von Spalten in SELECT ... GROUP BY Anweisungen ist nur möglich, wenn die Spalte sich in der GROUP BY Klausel befindet oder sich in einer Aggregatfunktion befindet.
PAD_CHAR_TO_FULL_LENGTHSpalten vom Datentyp CHAR werden bei Auswahl auf die volle Länge der Spalte aufgefüllt.
PIPES_AS_CONCATDer Operator || entspricht funktional der Funktion CONCAT() und nicht dem Operator OR.
REAL_AS_FLOATDer Datentyp REAL wird anstatt zum Alias ​​für den Datentyp DOUBLE zu einem Alias ​​für den Datentyp FLOAT.
SIMULTANEOUS_ASSIGNMENTDer Server wertet alle Zuweisungen in der SET-Klausel einer UPDATE-Anweisung gleichzeitig und nicht von links nach rechts aus.
STRICT_ALL_TABLESStrikt-Modus für Tabellen wird aktiviert, die transaktionale und nicht-transaktionale Speicher-Engines verwenden. Alle Anweisungen, die ungültige oder fehlende Daten beinhalten, erzeugen Fehler statt Warnungen.
STRICT_TRANS_TABLESStrikt-Modus aktivieren für Tabellen, die Transaktionsspeicher-Engines verwenden. Alle Anweisungen, die ungültige oder fehlende Daten beinhalten, erzeugen Fehler statt Warnungen.
TIME_ROUND_FRACTIONALDer Server rundet Sekundenbruchteile, wenn der Wert in einen Datentyp ohne Sekundenbruchteile konvertiert wird.
ANSIAlias ​​für REAL_AS_FLOAT, PIPES_AS_CONCAT, ANSI_QUOTES, IGNORE_SPACE.
DB2Alias ​​für PIPES_AS_CONCAT, ANSI_QUOTES, IGNORE_SPACE, NO_KEY_OPTIONS, NO_TABLE_OPTIONS, NO_FIELD_OPTIONS.
MAXDBAlias ​​für PIPES_AS_CONCAT, ANSI_QUOTES, IGNORE_SPACE, NO_KEY_OPTIONS, NO_TABLE_OPTIONS, NO_FIELD_OPTIONS, NO_AUTO_CREATE_USER.
MSSQLAlias ​​für PIPES_AS_CONCAT, ANSI_QUOTES, IGNORE_SPACE, NO_KEY_OPTIONS, NO_TABLE_OPTIONS, NO_FIELD_OPTIONS.
MYSQL323Alias ​​für HIGH_NOT_PRECEDENCE.
MYSQL40Alias ​​für HIGH_NOT_PRECEDENCE.
ORACLEEine Teilmenge der PL/SQL-Sprache von Oracle für gespeicherte Prozeduren wird aktiviert. Dies ermöglicht außerdem die folgenden anderen Modi: PIPES_AS_CONCAT, ANSI_QUOTES, IGNORE_SPACE, NO_KEY_OPTIONS, NO_TABLE_OPTIONS, NO_FIELD_OPTIONS, NO_AUTO_CREATE_USER, SIMULTANEOUS_ASSIGNMENT.
POSTGRESQLAlias ​​für PIPES_AS_CONCAT, ANSI_QUOTES, IGNORE_SPACE, NO_KEY_OPTIONS, NO_TABLE_OPTIONS, NO_FIELD_OPTIONS.
TRADITIONALAlias ​​für STRICT_TRANS_TABLES, STRICT_ALL_TABLES, NO_ZERO_IN_DATE, NO_ZERO_DATE, ERROR_FOR_DIVISION_BY_ZERO, NO_AUTO_CREATE_USER, NO_ENGINE_SUBSTITUTION.
TIME_TRUNCATE_FRACTIONALTIME- und TIMESTAMP-Werte werden beim Einfügen in eine Spalte mit demselben Typ gerundet, wenn der Sekundenbruchteil zu viele Stellen hat.
In MySQL und MariaDB bestimmt die Server-Variable sql_mode den SQL-Modus, der die Syntax und das Verhalten der auf dem Server ausgeführten SQL-Anweisungen und SQL-Skripte bestimmt, beispielsweise auch, wie streng der Server bei der Interpretation von SQL-Abfragen sein soll. Dies betrifft verschiedene Anwendungen wie Datenvalidierung, Fehlerbehandlung und Abfrageausführung, dabei kann die Variable sql_mode auf globaler oder auf Sitzungs-Ebene festgelegt werden.
Weitere Informationen zum SQL-Modus finden Sie hier: mysql.com und mariadb.com
Aktualisiert: 14.09.2023ImpressumKontaktGeschäftsbedingungenDatenschutz & CookiesUpdatesSitemapFacebookLinkedinTwitterStatistics©2020-2024 Heino Cunze-Fischer