Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

Frage Entwicklung

GELÖST

MS SQL 2008: Abfrage in Datei speichern

Mitglied: StephanC

StephanC (Level 1) - Jetzt verbinden

08.05.2014, aktualisiert 09.05.2014, 2519 Aufrufe, 6 Kommentare, 1 Danke

Hallo Zusammen,

ich soll jeden Tag zu einer bestimmten Uhrzeit diverse Daten in einer Datei zur Verfügung stellen.
Die Abfrage für die Daten habe ich schon gebaut und als views angelegt. Nun muss ich diese Daten aber auch noch in eine
Datei einfügen, wobei die Felder eine vorgeschrieben Länge haben und hintereinander weggeschrieben werden müssen - also ohne Trennzeichen.

Beispiel:
Santa...........Claus......Himmelspforte.2........4711 Nordpol
Chris............Cringel....Suedufer.12..............4916.Oakland

Ich habe es schon mit dem DTS probiert, treffe hier aber auf das Problem, das kein Zeilenumbruch statt findet.
Am liebsten wäre mir ein entsprechendes "Select into test.txt" was ich täglich per Agent anstossen kann - wer kann helfen ?

Gruß,
Stephan
Mitglied: gempalizer
09.05.2014 um 08:57 Uhr
Hallo Stephan

Schau dir diesbezüglich mal das Hilfsprogramm bcp an. Dieses kannst du in einem Batch-File anschupsen um eine Query abzusetzen und die Ergebnisse in ein txt-File zu schreiben (mit queryout).
Sollte etwa so aussehen (die diversen Parameter findest du im Netz, habe diese nicht mehr im Kopf):

bcp "Select * from Table where x=1" queryout "C:\test.txt"

http://msdn.microsoft.com/de-ch/library/ms162802.aspx

Hoffe dies hilft dir weiter. Grusss Thomas
Bitte warten ..
Mitglied: StephanC
09.05.2014 um 10:47 Uhr
Hallo Thomas,

mit bcp habe ich es schon versucht - nur habe ich hier das Problem, das die Dokumentation mehr als dürftig ist.
Vielleicht hast Du einen Tipp für mich, wie ich eine Datei erzeuge mit fester Ausgabebreite bzw. fester Länge ?

Gruß,
Stephan
Bitte warten ..
Mitglied: gempalizer
LÖSUNG 09.05.2014, aktualisiert um 22:09 Uhr
Hoi Stephan

Ja, du hast recht. Die Dokumentationen zu bcp sind eher dürftig.

Wäre allenfalls sqlcmd was?

Bsp:

"C:\Program Files\Microsoft SQL Server\100\Tools\Binn\sqlcmd.exe" -S Server\Instanz -d DBName -E -Q "Select x From y" -o "C:\test.txt" -h-1 -w 700

-h-1 entfernt die Spaltenheader
-w gibt die Spaltenbreite an.

Hab ich hier gefunden: http://de.depconline.com/49272
Bitte warten ..
Mitglied: StephanC
09.05.2014 um 21:56 Uhr
Hallo Thomas,

wir nähern uns ;)
Jetzt muss ich nur noch wissen, wie ich die Feldlänge angeben kann und diese dann abgeschnitten bzw. auch aufgefüllt wird,
Also:
Vorname 20 Zeichen
Nachname 30 Zeichen
Strasse 30 Zeichen
Bedeutet, das ab Zeichen 51 immer die Strasse anfängt). XML will der Empfänger leider nicht


Ich bin kurz davor ein neus Projewkt in VB6 zu schreiben - aber das muss doch auch mit Bordmitteln des SQL-Servers gehen ?!

Gruß,
Stephan
Bitte warten ..
Mitglied: gempalizer
12.05.2014 um 09:04 Uhr
Hallo Stephan

Hast du mittlerweile schon eine Lösung für dein Problem gefunden?

Ev. könntest du per For-Schleife unterschiedliche Trennzeichen zwischen den Werten einfügen und danach je nach Trennzeichen und Länge des Wertes die Formatierung / Spaltenbreite durchführen.
Bitte warten ..
Mitglied: gempalizer
12.05.2014 um 10:42 Uhr
Ich habe mich nochmals damit befasst. Für das Vorhaben wäre anscheinend bcp schon der richtige Weg, da man dabei zuerst ein Format-File erzeugen und sich danach per bcp darauf beziehen kann. Da du ja bereits eine View für deine Daten hast, kannst du das Format-File in Bezug zur View anlegen.

Folgender Link sollte dir weiterhelfen: https://www.simple-talk.com/sql/database-administration/working-with-the ...
Bitte warten ..
Ähnliche Inhalte
Datenbanken
Tatsächliche verwendeter Speicher MS SQL Express 2008
gelöst Frage von leuchtmastDatenbanken4 Kommentare

Hallo zusammen, gibt es eine Möglichkeit den gerade tatsächlich verwendeten Speicher eines MS SQL 2008 Express Datenbankserver auszulesen? Die ...

Datenbanken
MS SQL Server 2008 Auftragspriorität
gelöst Frage von SweetOneDatenbanken4 Kommentare

Hallo liebe Leute, ich hätte da heute mal eine Frage zum Thema Microsft SQL Server 2008. Die Forums-Suche hat ...

Datenbanken
MS SQL Abfragen und Formulare in Webseite einbinden
gelöst Frage von MachelloDatenbanken3 Kommentare

Hallo Zusammen, ich habe eine grundlegende Frage: System: MS - SQL Server mit einer relationalen Datenbank SQL-Express 2016 (Eine ...

Datenbanken
MS SQL - Zwei Summierungen (für Vergleich) in einer Abfrage möglich?
gelöst Frage von BluejetDatenbanken3 Kommentare

Hallo zusammen, es ist sicher ein einfaches Unterfangen, jedoch weiß ich nicht, wie ich es im Moment lösen soll ...

Neue Wissensbeiträge
Linux

Meltdown und Spectre: Linux Update

Information von Frank vor 1 TagLinux

Meltdown (Variante 3 des Prozessorfehlers) Der Kernel 4.14.13 mit den Page-Table-Isolation-Code (PTI) ist nun für Fedora freigegeben worden. Er ...

Tipps & Tricks

Solutio Charly Updater Fehlermeldung: Das Abgleichen der Dateien in -Pfad- mit dem Datenobject ist fehlgeschlagen

Tipp von StefanKittel vor 2 TagenTipps & Tricks

Hallo, hier einmal als Tipp für alle unter Euch die mit der Zahnarztabrechnungssoftware Charly von Solutio zu tun haben. ...

Sicherheit

Meltdown und Spectre: Wir brauchen eine "Abwrackprämie", die die CPU-Hersteller bezahlen

Information von Frank vor 2 TagenSicherheit12 Kommentare

Zum aktuellen Thema Meltdown und Spectre: Ich wünsche mir von den CPU-Herstellern wie Intel, AMD oder ARM eine Art ...

Sicherheit

Meltdown und Spectre: Realitätscheck

Information von Frank vor 2 TagenSicherheit10 Kommentare

Die unangenehme Realität Der Prozessorfehler mit seinen Varianten Meltdown und Spectre ist seit Juni 2017 bekannt. Trotzdem sind immer ...

Heiß diskutierte Inhalte
Batch & Shell
Meltdown Microsoft Prüf Script - .zip Datei leider leer
gelöst Frage von MasterBlaster88Batch & Shell13 Kommentare

Hallo zusammen, ich patche gerade unsere Windows Server bzgl. der Meltdown Lücke. Patch vorhanden, Reg Keys gesetzt Um das ...

Batch & Shell
Shell-Skript - Syntax error: Unterminated quoted string
Frage von newit1Batch & Shell13 Kommentare

Hallo Ich schreibe ein Skript das eine CSV-Datei in eine mySQL Datenbank schieben soll. Bekomme nach start des Skrips ...

E-Mail
Erfahrungen mit hMailServer gesucht
Frage von it-fraggleE-Mail10 Kommentare

Hallo, meine neue Stelle möchte einen eigenen Mailserver. Ich als Linuxkind war direkt geistig mit Postfix dabei. Leider wollen ...

Windows Server
DNS Forwarding an andere Domäne
Frage von detox91Windows Server9 Kommentare

Hallo, für Testzwecke haben wir bei uns eine zweite Windows Domäne (B.local) aufgebaut, welche komplett unabhängig und isoliert der ...