MS-Office-Forum
Google
   

Zurück   MS-Office-Forum > Microsoft Access & Datenbanken > SQL
Registrieren Forum Hilfe Alle Foren als gelesen markieren

Banner und Co.

Antworten
Ads Der Renner, 11 Entwicklertools für Access, Tipps & Trick und offene Datenbanken zum einzigartigen Preis.
Themen-Optionen Ansicht
Alt 04.12.2016, 12:16   #1
thomasreick
MOF User
MOF User
Standard T-SQL : MSSQL 2012 - umwandlung gemischter Feldinhalte (Datumsangabe) von nvarchar zu date

Guten Tag zusammen.

Ich habe aufgrund nachträglicher Felddatentypumstellungen vermutlich fehlerhafte Daten in meinem ursprünglichen Datumsfeld (datetime2).
Ein Import direkt in das Datumsfeld hat auf dem Kundensystem nicht hingehauen, also wurde auf nvarchar(50) umgestellt.

Dort sind schlußendlich "gemischte" Inhalte eingespielt worden, da ja nvarchar alles frißt.

Daher, so vermute ich, kann ich mit CAST oder CONVERT aus den Inhalten keinen Datumswert im Feld DatumKonvertiert erzeugen, mit dem sich z.B. Zeitintervalle abfragen lassen.
Auf der Entwicklungsmaschine (also bei mir) läuft das, beim Kunden leider nicht. Ich kann dieses Verhalten in meiner Entwicklungswelt nicht nachstellen.

Die kleine Liste zeigt einen Ausschnitt der Tabelle

Code:

Datum (nvarchar(50)    AnzahlZeichen	DatumKonvertiert (date)
2016-08-31 00:00:00    19                    2016-08-31
2016-08-31 00:00:00    19                    2016-08-31
21.09.2016             10                    2016-09-21
21.10.2016             10                    2016-10-21
Ausgangslage: MS-SQL-Server 2012 wird durch MS-Access 2013 Frontend mit Daten per ODBC beladen, Die MS-SQL-Server DB entsatnd aus eine SSMA-Übernahme einer Access 2013 Datenbak (jet). SSIS ist leider nicht möglich aufgrund IT-Vorgaben.

Mit der Anweisung

Code:

update dbo.MeineAndereTabelle set MeinKovertiertesDatum=CONVERT(date, MeinOriginalDatum, 103)
hat das in einer anderen Tabelle hingehauen. Da wurde vorher auch nicht mit den Datentypen herumgespielt....

Kann mir bitte jemand einen Tipp geben, ob ich
  • mit meinem Verdacht richtig liege? und
  • wie diese Transformation klappen könnte?

Ich bitte um Input

__________________

Vielen Dank

Thomas Reick
thomasreick ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Alt 03.01.2017, 07:59   #2
Eisbergle
Neuer Benutzer
Neuer Benutzer
Standard

bei mir funktionier es so ...

UPDATE dbo.MeineAndereTabelle SET
DatumKonvertiert = IIF (LEN(Datum)=19,LEFT(Datum,10),SUBSTRING(Datum,7,4)+'-'+SUBSTRING(Datum,4,2)+'-'+SUBSTRING(Datum,1,2));
Eisbergle ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Ads
Antworten


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Besucher: 1)
 
Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge anzufügen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

vB Code ist An.
Smileys sind An.
[IMG] Code ist An.
HTML-Code ist An.
Gehe zu


Alle Zeitangaben in WEZ +1. Es ist jetzt 01:19 Uhr.


Partner und Co.
Access-Paradies -Alles rund um die Datenbank Microsoft Access -Code -Programme-Tools -Tipps   Kostenlose Tipps & Tricks, Downloads und Programme   www.kulpa-online.com - Tipps - Tricks - Tutorials - Meinungen - Downloads uvm...   vb@rchiv · Willkommen in der Welt der VB Programmierung   Access-Garhammer - Hier finden Sie jede Menge Beispiel-Datenbanken zu Access und mehr ...   mcseboard.de   Die Top Seite für Excel-VBA-Makros uvm.

Powered by: vBulletin Version 3.6.2 (Deutsch)
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.

Copyright ©2000-2010 MS-Office-Forum. Alle Rechte vorbehalten.
Copyright ©Design: Manuela Kulpa ©Rechte: Günther Kramer
Eine Verwendung der Inhalte in anderen Publikationen, auch auszugsweise,
ist ohne ausdrückliche Zustimmung der Autoren nicht gestattet.
Beachten Sie bitte auch unsere Nutzungsbedingungen.