Willkommen auf myCSharp.de! Anmelden | kostenlos registrieren
 | Suche | FAQ

Hauptmenü
myCSharp.de
» Startseite
» Forum
» Suche
» Regeln
» Wie poste ich richtig?

Mitglieder
» Liste / Suche
» Wer ist online?

Ressourcen
» FAQ
» Artikel
» C#-Snippets
» Jobbörse
» Microsoft Docs

Team
» Kontakt
» Cookies
» Spenden
» Datenschutz
» Impressum

  • »
  • Community
  • |
  • Diskussionsforum
SQL Datum ausgeben (MSSQL)
Maffi1986
myCSharp.de - Member

Avatar #avatar-3437.gif


Dabei seit:
Beiträge: 54
Herkunft: Soest

Themenstarter:

SQL Datum ausgeben (MSSQL)

beantworten | zitieren | melden

verwendetes Datenbanksystem: MSSQL Express 2015

Hallo,

ich ändere derzeit eine Application von MySQL zu MSSQL, in MySQL habe ich das Datum immer über
DATE_FORMAT(datum,'%d.%m.%Y')

ausgegeben, wie mache ich das in MSSQL?

beim googlen bzw. suchen finde ich sachen wie
CONVERT(varchar(8), GetDate(), 112)
oder CAST aber ich finde keine gescheite Syntax.

Vielen Dank für die Anfängerhilfe.
private Nachricht | Beiträge des Benutzers
Abt
myCSharp.de - Team

Avatar #avatar-4119.png


Dabei seit:
Beiträge: 15702
Herkunft: BW

beantworten | zitieren | melden

Einfach nen Blick in die Doku werfen.
Convert() ist schon korrekt; man kann auch Format() verwenden.

PS: MSSQL Express 2015 gibt es nicht.
private Nachricht | Beiträge des Benutzers
Maffi1986
myCSharp.de - Member

Avatar #avatar-3437.gif


Dabei seit:
Beiträge: 54
Herkunft: Soest

Themenstarter:

beantworten | zitieren | melden

Hallo Abt,

vielen Dank für deine Unterstüzung, entschuldige, ich meinte SQL Express 2014, war schon Spät und ich nutze Visual Studio 2015.

von dieser Seite hatte ich das CAST,
CONVERT(varchar(8), GetDate(), 112)

wo setzte ich ich denn hier meinen Spalten Namen ein? Theoretisch ist diese Syntax ja richtig?

SELECT [position]
      ,[datum] 
      ,[Archiv]
 FROM [datenbankname].[dbo].[tabelle]

SELECT [position]
      ,[CONVERT(varchar(8), getdatum(), 112)]  
      ,[Archiv]
  FROM [datenbankname].[dbo].[tabelle]

ich finde kein passendes bsp.


Viele Grüße

Maffi
private Nachricht | Beiträge des Benutzers
mrennen
myCSharp.de - Member



Dabei seit:
Beiträge: 177
Herkunft: Duisburg

beantworten | zitieren | melden

SELECT [position]
      ,CONVERT(VARCHAR(8), GETDATE(), 112) 
      ,[Archiv]
 FROM [datenbankname].[dbo].[tabelle]

Das liest sich aber aus den bisherigen Antworten ...

Versuch mal:

SELECT CONVERT(VARCHAR(8), GETDATE(), 112) 

Das bringt nur das Datum, aber ich verstehe nicht warum du das aktuelle SQL Datum unter C# abfragst - das kannst du doch auch, schneller, unter C# mittels DateTime.Now :-)
Dieser Beitrag wurde 2 mal editiert, zum letzten Mal von mrennen am .
private Nachricht | Beiträge des Benutzers
Maffi1986
myCSharp.de - Member

Avatar #avatar-3437.gif


Dabei seit:
Beiträge: 54
Herkunft: Soest

Themenstarter:

beantworten | zitieren | melden

Hallo mrennen,

vielen Dank für deine Antwort, ich habe mich leider nicht gut ausgedrückt, ich möchte nicht das aktuelle Datum, sonder ich möchte aus der Datenbank eine Spalte auslesen, in der ein Datum im SQL Format gespeichert ist.

In der Spalte "datum" steht zb. 2015-05-06 und ich möchte es im Format 06.05.2015 ausgegeben haben.

Viele Grüße

Maffi
private Nachricht | Beiträge des Benutzers
Abt
myCSharp.de - Team

Avatar #avatar-4119.png


Dabei seit:
Beiträge: 15702
Herkunft: BW

beantworten | zitieren | melden

Formatierungen sollte immer der Client machen und nicht die Datenbank.
Das Format richtet sich schließlich anhand der Region des Benutzers (Stichwort: Localization).
private Nachricht | Beiträge des Benutzers
ThomasE.
myCSharp.de - Member



Dabei seit:
Beiträge: 453

beantworten | zitieren | melden

Was bewegt dich dazu die Konvertierung schon in der DB zu machen?

Als Klient hast normal immer die aktuelle Lokalität, in der du das richtige Format verwenden kannst. (DE, US, EN, FR, HU...) Am Server selbst hätte, wie Abt es schon schrieb, eigentlich keinen Sinn..
Ich habe den Titel mal angepasst, so dass Suchende auch etwas damit anfangen können. EDIT: Ich sollte beim Wort "Shift" im Titel das "f" nicht vergessen...
private Nachricht | Beiträge des Benutzers