![]() |
Datenbank: MSSQL Express • Version: 2005 • Zugriff über: Stored Procedure
MSSQL Datumsformat ändern
Moin,
ich bin gerade dabei eine StoredProcedure zu bauen. Dafür benötige ich allerdings alle Teile des Datums in zwei Stellen. Also statt 04.03.2008 04.03.08. Wie kann ich das anpassen? Gruß, Stefan |
Re: MSSQL Datumsformat ändern
Anzeigedatumsformat ändern.
|
Re: MSSQL Datumsformat ändern
Soweit konnt ich auch schon denken...
WIE geht das? |
Re: MSSQL Datumsformat ändern
Wie sieht die SP aus?
|
Re: MSSQL Datumsformat ändern
Noch ist da garnichts. Ich weiß aber, dass diese Funktion elementarer bestandteil sein wird.
Im großen und ganzen brauche ich eine Storedprocedure, die ein Feld aus der Datenbank liest. In diesem stehen das aktuelle Jahr, der aktuelle Monat und der Tag als String. Die entsprechenden Teile sollen miteinander verglichen werden und bei nichtübereinstimmung entsprechend auf den aktuellen Wert geändert werden. Dann soll da noch eine laufende Nummer angehangen werden. Gruß Stefan |
Re: MSSQL Datumsformat ändern
Zitat:
Ein Datum sollte immer im internen Format transportiert werden! Erst an der Benutzeroberfläche findet eine Umwandlung in einen menschenlesbaren String statt. Folgende SP macht einen grossen Fehler: Datum wird als String übergeben
SQL-Code:
So wäre es richtig
CREATE PROCEDURE test_bad @tag varchar(4), @monat varchar(2), @jahr varchar(2) AS ...
SQL-Code:
CREATE PROCEDURE test_good @datum DATE AS ...
|
Re: MSSQL Datumsformat ändern
Die Sache ist die.
Die Teile sind bestandteil einer Auftragsnummer die folgendes Format hat: JJ6DDMM Das ganze dient dazu um eine eindeutige ID zuzuweisen. Da leider auch ein Fremdsystem damit arbeiten muss, welche sich die Nummer aus unserer Datenbank holt, MUSS das so passieren. Da eine Anpassung des Fremdsystems nicht vorgesehen ist. Gruß, STefan |
Re: MSSQL Datumsformat ändern
SQL-Code:
Liefernr = CAST(YEAR(datum) as varchar(2)) + '6' + CAST(MONTH(datum) as varchar(2))+CAST(DAY(datum) as varchar2)
|
Re: MSSQL Datumsformat ändern
|
Re: MSSQL Datumsformat ändern
Vielleicht so...
SQL-Code:
Das Datum so zu verarbeiten ist allerdings nicht sinnvoll. Aus dem Jahrtausendwechsel-Problem sollte man etwas lernen!
DECLARE @datum DATETIME
DECLARE @datumSTR VARCHAR(8) SELECT @datum = '4.3.2008' SELECT @datumSTR = CONVERT(VARCHAR, @datum, 4) PRINT @datumSTR Gruss Thorsten |
Alle Zeitangaben in WEZ +1. Es ist jetzt 20:34 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz