suchen
Heimphp教程PHP开发PHP MySQL erweiterte SQL-Abfrage-Lösung für chinesische Feldnamen

1. Frage:

Die Daten einer Tabelle in SQLServer2000 müssen in MySQL5 importiert werden (es wird dringend empfohlen, dies nicht zu tun). um Chinesisch als Feldnamen zu verwenden). Tatsächlich besteht der Vorgang darin, die Datensätze auf SQL Server abzufragen und in MySQL einzufügen. Die gewählte Skriptsprache ist PHP. PHP öffnet MSSQL- und MySQL-Erweiterungen und erleichtert so den Betrieb beider Datenbanken.
Das Problem besteht darin, dass die Feldnamen der Tabelle in SQLServer auf Chinesisch sind. Wenn die geschriebene Abfrageanweisung in SQLServe getestet wird, werden Datensätze zurückgegeben, und bei Verwendung der erweiterten MSSQL-Abfrage von PHP wird ein Fehler gemeldet.
Ich habe die Informationen im Internet überprüft und festgestellt, dass es online nicht viele relevante Informationen gibt. Viele Internetnutzer glauben, dass die MSSQL-Erweiterung von PHP chinesische Zeichen in SQL-Anweisungen nicht unterstützt. Nach Überprüfung der Informationen unterstützt PHPs MSSQL chinesische Anweisungen in SQL. Die meisten Probleme bei der Fehlerberichterstattung sind auf Codierungsprobleme zurückzuführen. Die Codierung der Datenbank und die Codierung stimmen nicht mit der Codierung der Abfrageanweisung überein. Der chinesische Teil der Abfrageanweisung in SQL Server wird verstümmelt, was dazu führt, dass die Abfrage fehlschlägt.

2. Lösung:

Nachdem wir den Grund kennen, werden wir ihn analysieren und lösen und bestätigen, dass es sich um ein Problem inkonsistenter Codierung handelt. Die Lösung ist in die folgenden Schritte unterteilt:
1. Bestätigen Sie die Kodierung der SQLServer-Datenbank. Meine Datenkodierung ist GBK.
2. Bestätigen Sie die Kodierung der aktuellen PHP-Skriptdatei. Meine Kodierung ist UTF-8.
3. Konvertieren Sie die Codierung von SQL-Abfrageanweisungen.
Ergänzung: Einige Internetnutzer haben erwähnt, dass sie die Kodierung von PHP-Skriptdateien konvertieren müssen, um mit der Kodierung der Datenbank übereinzustimmen. Stellen Sie lediglich sicher, dass Ihre SQL-Anweisung mit der Kodierung übereinstimmt Es wird empfohlen, dass Sie keine Konvertierung durchführen müssen. Der Grund dafür ist, dass Sie auch die Kodierung aller PHP-Skriptdateien konvertieren müssen ist nicht einheitlich und es ist leicht, Fehler zu machen, wenn es viele miteinander verbundene Dateien gibt, ist dies ebenfalls eine sehr problematische Frage und kompliziert die Sache.

Dritter Plan:

Schreiben Sie eine Konvertierungsfunktion, um die SQL-Anweisungscodierung zu konvertieren, bevor Sie SQL ausführen. Mein Beispielcode ist unten gepostet:
Code kopieren Der Code lautet wie folgt:
//Codierungskonvertierungsfunktion
function utf8togb($s) {
return iconv('utf-8', 'gbk // IGNORE', $s); // Der IGNORE-Parameter wird ignoriert, wenn auf Zeichen gestoßen wird, die nicht konvertiert werden können
}
//Es wird empfohlen, alle chinesischen Felder durch englische Aliase zu ersetzen, um die folgenden Vorgänge und die Codierung zu erleichtern Konvertierung und andere Probleme
$sql="SELECT [id], [column] as typeid, [topic] as title, [author] as author, convert(text, [text]) as body FROM [article table]; ";
$ sql = utf8togb($sql);

Stellungnahme
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)
1 Monate vorBy尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Beste grafische Einstellungen
1 Monate vorBy尊渡假赌尊渡假赌尊渡假赌
Will R.E.P.O. Crossplay haben?
1 Monate vorBy尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

WebStorm-Mac-Version

WebStorm-Mac-Version

Nützliche JavaScript-Entwicklungstools

SublimeText3 Linux neue Version

SublimeText3 Linux neue Version

SublimeText3 Linux neueste Version

Herunterladen der Mac-Version des Atom-Editors

Herunterladen der Mac-Version des Atom-Editors

Der beliebteste Open-Source-Editor

SublimeText3 Englische Version

SublimeText3 Englische Version

Empfohlen: Win-Version, unterstützt Code-Eingabeaufforderungen!

SAP NetWeaver Server-Adapter für Eclipse

SAP NetWeaver Server-Adapter für Eclipse

Integrieren Sie Eclipse mit dem SAP NetWeaver-Anwendungsserver.