ich möchte mit dem Daten aus einer Tabelle exportieren. Die Daten enthalten
allerdings Sonderzeichen (ä, ü, ö usw..)! Wenn ich mit dem Export-Assi
arbeite klappt das nicht, egal ob ich als Ziel eine Textdatei, eine
Excel-Tabelle, eine andere SQL-Server Tabelle oder sonst ein Ziel verwende.
Die Systemumgebung ist WinNT4.0 (englisch), SQL-Server (englisch)! Ich habe
es mit dem Enterprise Manager lokal und von einer deutschen W2k Workstation
versucht (mit deutschem Enterprise Manager). Der Zeichensatz auf dem Server
ist Deutsch (Systemsteuerung NT) bzw. Unicode (bei der SQL Server
Installation).
Kann mir da jemand einen Tipp geben?
Danke
Marcel
"Marcel Berneaud" <MBer...@skillportal.de> schrieb im Newsbeitrag
news:#USFe5amAHA.2128@tkmsftngp03...
es ist der Datentyp varchar. SQL-Server Zeichensatz ist Unicode.
Das Beispiel kann ich leider erst morgen (Montag) posten, weil ich ja
momentan nicht in der Firma bin.
Danke einstweilen für die Rückantwort.
Marcel
"Olaf Pietsch" <Olaf_P...@t-online.de> schrieb im Newsbeitrag
news:O$MabvbmAHA.1916@tkmsftngp03...
also folgende Info's:
- Die Codepage ist "CP 850" (im SQL-Server)!
- Das Feld in der Tabelle hat den Datentyp "varchar"
- Wenn ich den DTS benutze um die Daten in eine Textdatei zu exportieren
bekomme ich folgendes Aussehen der Daten (das sind natürlich jetzt erfundene
Beispiele):
>7367,1,2,"DE","Herr B"ll","","4","64025","Darmstadt","Hinter den Eichen 78"
>7368,3,3,"DE","HSC Software","","5","63303","Dreieich","Frankfurter Str.
169"
>7369,1,3,"DE","Bew"hrt KG","","6","63100","Idstein","Karl-May-Straáe 112"
Wie man sieht ist
ö = "
ä = "
ß = á
So sehen die Daten alle aus. Den gleichen Effekt habe ich wenn ich die Daten
mittels DTS in eine andere Tabelle in der gleichen DB übertragen will.
Mache ich das aber mit einer SQL-Anweisung (SELECT...INTO), dann
funktioniert alles einwandfrei. Leider sind Timestamps und sonstige Felder
in den Tabellen, die ich übertragen muss enthalten, deshalb ist das nicht so
trivial. Zudem sind die Tabellen in der neuen DB schon vorhanden.
- Die Systemeinstellungen auf dem Server selber (NT-Umgebung/Control
Panel/Regional Settings) ist "German".
Ich hoffe damit ein paar hilfreiche Infos gegeben zu haben.
Danke für alle Vorschläge.
Marcel
"Olaf Pietsch" <Olaf_P...@t-online.de> schrieb im Newsbeitrag
news:#gcjjgcmAHA.920@tkmsftngp02...
Wir stellen nur den ISO 1252 (ANSI) ein und haben deshalb noch keine
Probleme beim Datenaustausch gehabt.
Der direkt Export nach Excel dürfte wohl in die Hose gehen, weil der
ANSI-Zeichensatz vorausgesetzt wird.
Aber Excel kann Text-Dateien im DOS-Zeichensatz importieren (Textfile Import
Wizard).
Möglichkeit: Als txt exportieren und in Excel über diese Option einlesen.
Dann gibt es noch das gute alte bcp -Kommando (Sql-Server Tools), siehe
ONLINE-Hilfe, Option -C code_page mit dem man Daten exportieren kann.
Leider kann ich es nicht ausprobieren, aber konvertiere doch per View oder
SELECT die Varchar () - Datenfelder in nvarchar() CREATE view export AS
SELECT ..., convert(nvarchar(50), Person ) As Person, ... und benutze dieses
View zum exportieren.
Wenn es der SQL 2000 wäre, könnte man collate zur Zeichensatzkonvertierung
verwenden.
Kann mich dunkel daran erinnern, da muß es eine WINAPI geben, die zwischen
ANSI und OEM-Zeichensatz Strings konvertieren kann, irgendetwas mit *OEM*,
aber keine Ahnung mehr.
Leider gehen mir nun die Ideen aus, hoffe, daß ich etwas zur Klärung
beitragen konnte.
Olaf
"Marcel Berneaud" <MBer...@skillportal.de> schrieb im Newsbeitrag
news:efGyOCqmAHA.1848@tkmsftngp02...
vielen Dank für die Anregungen!
Ich werde den Umweg zu Excel mal probieren und wenn das nicht klappt die
Geschichte mit dem View (das ist kein Thema das Ding anzulegen).
Das mit der WinApi ist auch eine gute Idee.
Ich werde mal in der MSDN nachschauen. Ich kenne die Funktion zwar nicht,
aber wenn es sie gibt werde ich mir ein kleines C-Prog. schreiben.
Danke einstweilen! Ich melde mich wenn ich Ergebnisse habe.
Marcel
"Olaf Pietsch" <Olaf_P...@t-online.de> schrieb im Newsbeitrag
news:et32zUqmAHA.564@tkmsftngp03...