Heim Datenbank MySQL-Tutorial MySQL 处理非法数据

MySQL 处理非法数据

Jun 07, 2016 pm 05:41 PM
mysql错误

默认情况下,MySQL按照以下规则处理数据越界和其他非正常数据1、对于数值数据或time数据列,超出合法范围的值将被阶段到最近的取值范围边界;2、对于字符串数据

默认情况下,香港虚拟主机,MySQL按照以下规则处理“数据越界”和其他非正常数据

1、对于数值数据或time数据列,香港空间,超出合法范围的值将被阶段到最近的取值范围边界;
2、对于字符串数据列(不包括enum、set)太长的字符串将被截断到数据列的最大长度,对于
   ENUM类型数据,MySQL将不合法成员用空字符串代替。如果赋值给某个set数据列包含非法子字符串,那mysql会删除那些子字符串并把剩下的赋值给该数据列
3、对于日期和时间数据列,非法数值会被转换成‘0’值替代
当发生上述情况的时候,MySQL会生成警告, 可使用 show warnings 查看。
4、对于字符串序列,香港服务器,太长的字符串将被截短到数据列的最大长度

如果需要在插入或更新数据时进行更严格的检查,可以启用特殊的SQL MODE;
sql_mode='strict_all_tables,strict_trans_tables'

对于支持事务的表,这两种模式是一样的:如果发现某个值缺失或非法,MySQL将抛出错误,语句会停止运行并回滚。
对于不支持事务的表,这两种模式的效果:
1、如果在插入或修第一个数据行时就发现某个值非法或缺失,那该语句直接抛错,语句停止执行。这个和支持事务的数据表行为时一样的。
2、如果在插入或修改第n个(n>1)数据行时才发现错误,那就会出现下面的情况:
   2.1 在strict_all_tables模式下,停止语句执行,存在部分更新的问题
   2.2 在strict_trans_tables模式下,MySQL将继续执行该语句避免“部分更新问题”,对每个非法值将其转换为最接近的合法值。

配合严格模式的其他几个SQL模式:

ERROR_FOR_DIVISION_BY_ZERO: 在严格模式下,遇到以0为除数的情况,拒绝插入数据库,(如果不在严格模式下,MYSQL将生成一条告警,并插入NULL值)

NO_ZERO_DATE:在严格模式下,拒绝0日期值进入数据库。

建议采用:strict_trans_tables ERROR_FOR_DIVISION_BY_ZERO

制止错误的另一个办法是在insert或update语句里使用IGNORE关键字,使非法值而导致的错误弱化为一个警告。

本文出自 “技术成就梦想” 博客,请务必保留此出处

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Beste grafische Einstellungen
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. So reparieren Sie Audio, wenn Sie niemanden hören können
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Wie gehe ich mit dem MySQL-Verbindungsfehler 1049 um? Wie gehe ich mit dem MySQL-Verbindungsfehler 1049 um? Jun 29, 2023 am 09:50 AM

Wie gehe ich mit dem MySQL-Verbindungsfehler 1049 um? MySQL ist ein häufig verwendetes relationales Datenbankverwaltungssystem. Viele Entwickler und Systemadministratoren verwenden MySQL zum Speichern und Verwalten von Daten. Bei der Verwendung von MySQL tritt jedoch manchmal das Problem des Verbindungsfehlers 1049 auf. In diesem Artikel werden die Ursachen des Verbindungsfehlers 1049 vorgestellt und verschiedene Methoden zur Lösung dieses Problems aufgezeigt. Der MySQL-Verbindungsfehler 1049 wird normalerweise dadurch verursacht, dass die Datenbank nicht existiert oder der Datenbankname falsch ist. Beim Herstellen einer Verbindung zum MySQL-Dienst

Unbekannte Spalte „Spaltenname' in „Feldliste' – So beheben Sie den MySQL-Fehler: Unbekannte Spalte in der Feldliste Unbekannte Spalte „Spaltenname' in „Feldliste' – So beheben Sie den MySQL-Fehler: Unbekannte Spalte in der Feldliste Oct 05, 2023 am 10:44 AM

Titel: Unknowncolumn'column_name'in'fieldlist' – So beheben Sie den MySQL-Fehler: Unbekannte Spalte in der Feldliste, spezielle Codebeispiele sind erforderlich. Wenn Sie die MySQL-Datenbank für Abfragen oder Operationen verwenden, werden Sie manchmal auf die Fehlermeldung „Unknowncolumn“ stoßen. Spaltenname'in'Feldliste'", d. h. es liegt ein unbekannter Spaltenfehler in der Feldliste vor. Dies ist normalerweise der Fall

Was tun, wenn der MySQL-Verbindungsfehler 1017 auftritt? Was tun, wenn der MySQL-Verbindungsfehler 1017 auftritt? Jun 30, 2023 am 11:57 AM

Wie gehe ich mit dem MySQL-Verbindungsfehler 1017 um? MySQL ist ein relationales Open-Source-Datenbankverwaltungssystem, das häufig in der Website-Entwicklung und Datenspeicherung eingesetzt wird. Bei der Verwendung von MySQL können jedoch verschiedene Fehler auftreten. Einer der häufigsten Fehler ist der Verbindungsfehler 1017 (MySQL-Fehlercode 1017). Der Verbindungsfehler 1017 weist auf einen Datenbankverbindungsfehler hin, der normalerweise durch einen falschen Benutzernamen oder ein falsches Passwort verursacht wird. Wenn MySQL die Authentifizierung mit dem angegebenen Benutzernamen und Passwort nicht durchführen kann

So beheben Sie einen MySQL-Datenbankinitialisierungsfehler So beheben Sie einen MySQL-Datenbankinitialisierungsfehler Apr 14, 2024 pm 07:12 PM

Um das Problem mit dem Initialisierungsfehler der MySQL-Datenbank zu beheben, führen Sie die folgenden Schritte aus: Überprüfen Sie die Berechtigungen und stellen Sie sicher, dass Sie einen Benutzer mit den entsprechenden Berechtigungen verwenden. Wenn die Datenbank bereits vorhanden ist, löschen Sie sie oder wählen Sie einen anderen Namen. Wenn die Tabelle bereits vorhanden ist, löschen Sie sie oder wählen Sie einen anderen Namen. Überprüfen Sie die SQL-Anweisung auf Syntaxfehler. Bestätigen Sie, dass der MySQL-Server ausgeführt wird und eine Verbindung hergestellt werden kann. Stellen Sie sicher, dass Sie die richtige Portnummer verwenden. Überprüfen Sie die MySQL-Protokolldatei oder den Fehlercode-Finder auf Details zu anderen Fehlern.

PHP gibt die numerische Kodierung der Fehlermeldung in der vorherigen MySQL-Operation zurück PHP gibt die numerische Kodierung der Fehlermeldung in der vorherigen MySQL-Operation zurück Mar 22, 2024 pm 12:31 PM

In diesem Artikel wird die digitale Kodierung der von PHP im vorherigen MySQL-Vorgang zurückgegebenen Fehlermeldung ausführlich erläutert. Der Herausgeber hält dies für recht praktisch, daher teile ich es Ihnen als Referenz mit. Ich hoffe, dass Sie nach dem Lesen dieses Artikels etwas gewinnen können . . Verwenden von PHP zum Zurückgeben von MySQL-Fehlerinformationen Einführung in die numerische Kodierung Bei der Verarbeitung von MySQL-Abfragen können Fehler auftreten. Um diese Fehler effektiv behandeln zu können, ist es wichtig, die numerische Kodierung von Fehlermeldungen zu verstehen. Dieser Artikel führt Sie durch die Verwendung von PHP, um die numerische Kodierung von MySQL-Fehlermeldungen zu erhalten. Methode zum Erhalten der numerischen Kodierung von Fehlerinformationen 1. mysqli_errno() Die Funktion mysqli_errno() gibt die aktuellste Fehlernummer der aktuellen MySQL-Verbindung zurück. Die Syntax lautet wie folgt: $erro

So überprüfen Sie den Fortschritt der MySQL-Datenbankwiederherstellung So überprüfen Sie den Fortschritt der MySQL-Datenbankwiederherstellung Feb 24, 2024 pm 12:24 PM

MySQL ist ein sehr häufig verwendetes relationales Open-Source-Datenbankverwaltungssystem. Es zeichnet sich durch Stabilität, Effizienz, Flexibilität usw. aus und wird häufig in verschiedenen Arten von Anwendungen verwendet. Wenn Sie MySQL verwenden, werden Sie unweigerlich auf Datenbankwiederherstellungsvorgänge stoßen. Wie Sie den Fortschritt der MySQL-Datenbankwiederherstellung genau überprüfen können, ist zu einem wichtigeren Thema geworden. Der Wiederherstellungsfortschritt der MySQL-Datenbank kann durch Anzeigen des MySQL-Fehlerprotokolls abgerufen werden. Im MySQL-Fehlerprotokoll werden alle Datenbankbetriebsdatensätze aufgezeichnet.

So beheben Sie den MySQL-Fehler 1171 So beheben Sie den MySQL-Fehler 1171 Jan 09, 2024 pm 03:59 PM

Lösung: 1. Überprüfen Sie die Datentypen, um sicherzustellen, dass die Datentypen in den Spalten, die Sie im Index erstellen, kompatibel sind. 2. Vermeiden Sie die Verwendung von Funktionen oder Ausdrücken für die Spalten, in denen Sie den Index erstellen Sie müssen Funktionen oder Ausdrücke für indizierte Spalten verwenden. Stellen Sie sicher, dass Sie eine explizite Typkonvertierung verwenden. 4. Überprüfen Sie die MySQL-Version und die Dokumentation, um mehr über Indizes und Datentypen zu erfahren. 5. Optimieren Sie Abfragen. Erwägen Sie eine Neuauswertung und Optimierung Ihrer Abfragen effektive Nutzung von Indizes; 6. Erwägen Sie die Verwendung anderer Tools oder Methoden usw.

Sammlung von Lösungen für häufige MySQL-Fehler Sammlung von Lösungen für häufige MySQL-Fehler Jun 15, 2023 pm 02:58 PM

Wenn Sie während der Entwicklung häufig mit MySQL arbeiten, werden Sie auf einige häufige Fehler stoßen. Einige Fehler führen dazu, dass MySQL nicht ordnungsgemäß funktioniert, andere beeinträchtigen die Leistung des Programms. Hier sind einige häufige MySQL-Fehler und ihre Lösungen. Beim Herstellen einer Verbindung zum MySQL-Server kann die folgende Fehlermeldung auftreten: Can'tconnecttoMySQLserveron'localhost'(10061)Ac

See all articles