2010-12-29 14 views
0

Ich habe eine alte Datenbank, die ich von Access zu MS SQL Server 2008 konvertieren. In der Access-Datenbank wurden Daten als 02/2008 also MM/YYYY geschrieben. Ich möchte dies zu einem DATE-Typ konvertieren, wo ich etwas wie MM/DD/YYYY anzeigen kann. Gibt es eine Möglichkeit, das mit SQL Server zu tun? Als ich CONVERT versucht, scheitert es beacuse gibt es einige unregelmäßige Termine, so einKonvertieren von Zeichenfolgen zu DATE in SQL Server

  • 1/2008
  • 01/2004
  • /2001
  • /4
  • etc

so ist mein Gedanke, dass ich nur etwas Code aufschreibe, um jedes Datum durchzugehen und Regex zu verwenden, um es zu konvertieren, und es dann zurück in die Datenbank in einer neuen Tabelle zu speichern.

Irgendwelche Gedanken, wie man das einfacher macht?

+0

Wurden die Daten in den Access-Datenbank-Strings oder andere nützliche Datentypen? – Suirtimed

Antwort

0

Sieht aus wie Ihre einzige Wahl hier ist eine Art von String-Manipulation wie Sie vorgeschlagen haben. Welchen Teil des Prozesses möchten Sie vereinfachen?

+0

Ich dachte, es könnte etwas sein, über das ich nicht nachdenke. Ich hatte gehofft, einfach ein Skript in SQL schreiben zu können, anstatt in C# zu schreiben und dann die Daten zurück in die Datenbank zu schieben. –

+0

Sie können die Zeichenfolge in SQL möglicherweise bearbeiten, obwohl SQL Server bei der Zeichenfolgenbearbeitung generell ungeschickt ist. Es gibt auch Möglichkeiten, von SQL aus auf die .NET CLI zuzugreifen, wodurch Sie auf bessere Methoden zur String-Manipulation zugreifen können. Starten Sie http://msdn.microsoft.com/en-us/library/ms254498.aspx. – MAW74656

Verwandte Themen