netgearsdk
Goto Top

Zeilenumbruch im Eintrag (MSSQL 2008)

Hallo zusammen,

gibt es in irgendwelcher hinsicht eine Möglichkeit, womit ich im MSSQL 2008 in die Einträgen Zeilenumbrüche hinzuzufügen.

So dass ich wenn ich den Eintrag herrauslese der eintrag mit dem gesetzten Zeilenumbruch erscheint. z.b. so:

PC:
8 GB RAM
500 GB Festplatte


und nicht so: PC: 8 GB RAM 500 GB Festplatte


Wenn nicht, wie könnte ich diese anders lösen?

Danke und LG

Content-ID: 194623

Url: https://administrator.de/contentid/194623

Ausgedruckt am: 23.11.2024 um 00:11 Uhr

Hitman4021
Hitman4021 21.11.2012 um 10:25:58 Uhr
Goto Top
Hallo,

wie liest du die Daten aus?
Und wo gibst du die Daten danach aus?
Den üblichen Verdächtigen (\n) schon versucht?

Gruß
netgearsdk
netgearsdk 21.11.2012 aktualisiert um 10:29:56 Uhr
Goto Top
@Hitman4021

Hallo
Die Daten trage ich von Hand ein.
Diese werde ich dann aus einem Programm wieder herauslesen. Da die Einträge immer unterschiedliche Zeilenumbrüche haben, möchte ich nur den Eintrag (bereits Formatiert) übernehmen und ausgeben.

Nein, wie geht denn der \n? Mal gucken ob google mehr davon weiss....

LG
Hitman4021
Hitman4021 21.11.2012 um 10:35:29 Uhr
Goto Top
Hallo

Diese werde ich dann aus einem Programm wieder herauslesen. Da die Einträge immer unterschiedliche Zeilenumbrüche haben, möchte ich nur den Eintrag (bereits Formatiert) übernehmen und ausgeben.
Ja wie gibst du die Daten aus? HTML?

Nein, wie geht denn der \n? Mal gucken ob google mehr davon weiss....
http://en.wikipedia.org/wiki/Newline

Das ist \n
ein Zeilenumbruch

Gruß
wiesi200
wiesi200 21.11.2012 um 10:43:57 Uhr
Goto Top
Hallo,
sorry aber solche Daten schreibt man doch nicht so in eine Datenbank.
Da läuft's mir ja kalt den Rücken runter.

Für jede Info eine separate Spalte anlegen.
Wie man es dann in der Ausgabe formatiert ist ein kpl. anderes Thema.
Hitman4021
Hitman4021 21.11.2012 um 10:50:43 Uhr
Goto Top
Hallo,

ich habe es so verstanden das er Fließtext in eine Datenbank schreiben will.
Also ein Textfeld.

Ansonsten:
http://de.wikipedia.org/wiki/Normalisierung_%28Datenbank%29

Gruß
wiesi200
wiesi200 21.11.2012 um 10:57:44 Uhr
Goto Top
Zitat von @Hitman4021:
Hallo,

ich habe es so verstanden das er Fließtext in eine Datenbank schreiben will.
Also ein Textfeld.

Rein von der Frage her schon. Aber das Beispiel finde ich grad nicht passend.
netgearsdk
netgearsdk 21.11.2012 aktualisiert um 11:11:31 Uhr
Goto Top
@Hitman4021

Hallo
Nein, als normaler Tet.

/n funktioniert leider nicht....
Hitman4021
Hitman4021 21.11.2012 um 11:12:28 Uhr
Goto Top
Hallo,

in ne Textdatei? Im Browser?
Sry aber da gibt es Unterschiede. Wie du in dem Wiki Link von vorher nachschauen kannst.

Gruß
wiesi200
wiesi200 21.11.2012 um 13:14:40 Uhr
Goto Top
Erklär uns doch mal im ganzen was du da vor hast.
Denn ich glaub immer noch du packst das kpl. falsch an.
MadMax
MadMax 21.11.2012 um 13:32:49 Uhr
Goto Top
Hallo netgearsdk,

wahrscheinlich hast Du Deinen Text im Management Studio abgerufen und vermisst Deine Zeilenumbrüche. Die Zeilenumbrüche sind aber so in der DB gespeichert, wie Du sie angegeben hast.

Standardmäßig verwendet das Management Studio die Ausgabe im Raster, dabei gehen die Zeilenumbrüche verloren, das betrifft aber ausschließlich die Anzeige in diesem Raster. Wenn Du die Ausgabe in Text wählst (Strg-T), dann siehst Du, daß die Zeilenumbrüche richtig gespeichert wurden.

Gruß, Mad Max
netgearsdk
netgearsdk 21.11.2012 um 14:58:48 Uhr
Goto Top
Hallo @wiesi200

Also ich muss jeden Tag in unserem System Einträge eintragen.
Einige dieser Eintrag beinhaltet unter anderem auch ein aktuelles Datum, welches ich bishin von Hand abändern musste.
Da ich ein sehr fauler Mensch bin und mich im Gebiet der DATENBANK & PROGRAMMIERUNG Erfahrungen sammeln möchte,
habe ich mir vorgenommen, dies über MSSQL und VB zu automatisieren. Auch wenn das auf den ersten Blick nicht gleich die ausgezeichnete Lösungsvorschlag ist.

Jetzt stellt sich jedoch die Frage, ob das was ich realiseren möchte, überhaupt möglich ist.
Wäre nett, wenn ich ein Feedback bekommen würde ob dies mit meinen Überlegungsschritte technisch möglich ist. Ich verwende bewusst funktionen wie (stored procedure, datenbank etc.) obwohl man das ganze auhc über VB anstellen könnte.

Meine Überlegung sind folgendes.
Ich will zuerst einmal diese Einträge in eine Datenbank schreiben. In den Einträgen, welche in der Tabelle sind und das Datum beinhalten müssen, schreibe ich statt ein Datum nur [date] ein.
Anschliessend möchte ich über ein Programm, welches ich noch schreiben werde, diese Einträge herauslesen und mit einem klick in die zwischenspeicher (kopieren) ablegen. (Natürlich mit der aktuellem Datum)
Die Aktuallisierung der Datum möchte ich über ein stored procedure machen. Und zwar sollte er jedes mal die Einträge in der Datenbank ersetzen mit dem aktuellen datum. Und zwar nur die die [date] beinhalten.
zusätzlich splittet der stored procedure die einträge so wie es dargestellt werden müssen und übergibt dise an das Programm.

Sind meine Überlegnungen technisch realisierbar?
Wie gesagt, ich verwende bewusst eine Datenbank, bewusst eine stored procedure usw.


Freue mich schon auf die Antwort!
LG
wiesi200
wiesi200 21.11.2012 aktualisiert um 15:20:26 Uhr
Goto Top
Das ist jetzt zwar ein echt schöner Text, aber so richtig erklärt was das ganze soll hast du immer noch nicht. Zumindest kapier ich's nicht.

Wenn du Textbausteine verwalten willst, ist das ein weg.
Aber wenn das so was wie ne Inventurliste sein soll oder ne Artikelliste, dann bist du so völlig falsch dran.

Warum du immer mit "Stored Procedure" um dich wirfst verstehe ich hier auch nicht.
Ein Datum ist in deinem o.g. Beispiel auch nicht drinnen. Ich verstehe es einfach nicht.
netgearsdk
netgearsdk 22.11.2012 um 09:04:10 Uhr
Goto Top
@wiesi200

Zuerst einmal danke für deine Antwort.
Ja, ich möchte Textbausteinebearbeiten, welcher schlussendlich im System als Log eingetragen wird.

Ich kann dir gerne ein Beispiel nennen.
Im Datenfeld(ID 9) der Tabelle "tbl_CheckEntry" steht z.B.:

Der Server "PSBL01" ist auf Status OK. | Signaturen von [Date].

So, nun möchte ich mit einem Store Procedure, soweit es technisch möglich ist, was meines Wissens nach möglich ist, diesen Datenfeld dann so upzudaten,
dass wenn ich in meinem Programm auf ein Button klicke, nur noch die Datenfelder auslesen muss.

Im Store Procedure, sollte falls im Datenfeld ein "[Date]" steht, diesen mit dem aktuellen Datum ersetzen. Und in den Datenfelder wo ein "|" (Pipeline) vorhanden ist, sollte er ein Zeilenumbruch machen.

So hat die Datenbank aktuelle Datensätze, welcher er nur an das Programm übergeben muss.
Und um nochmals klar anzudeuten, ich wähle bewusst diese Schritte. Auch der ganzer Prozess ich dies einfacher zu lösen ist.
Es geht mir einfach darum, dass ich mit der Materie ein bisschen Erfahrungen Sammle. Bedienung ist natürlich, dass es technisch möglich ist.

LG
MadMax
MadMax 22.11.2012 um 12:57:10 Uhr
Goto Top
Hallo,

da brauchst Du gar keine Stored Procedure, da genügt ein einfaches select:
select	*,
	replace (replace (Datenfeld, '|', char (13) + char (10)), '[Date]', convert (varchar (20), getdate (), 104))  
from	tbl_CheckEntry

Gruß, Mad Max