Jump to content

veraltetes/ungültiges Datum finden


Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Empfohlene Beiträge

Geschrieben

hallo Admins !

 

ich versuche gerade in meinem Lab eine CRM Datenbank zu importieren, allerdings bekomme ich einen Fehler weil in einem Feld ein Datum mit dem Jahr 1753 steht - leider steht nicht im Errorlog in welcher Tabelle dieser Wert steht.

 

InnerException:
Microsoft.Crm.CrmArgumentOutOfRangeException: DateTime is less than minumum value supported by CrmDateTime. Actual value: 01/01/1753 00:00:00, Minimum value supported: 01/01/1900 00:00:00 ---> System.ArgumentOutOfRangeException: DateTime is less than minumum value supported by CrmDateTime. Actual value: 01/01/1753 00:00:00, Minimum value supported: 01/01/1900 00:00:00
 
Meine Idee jetzt:
 
ich lese alle DateTime Felder aus und lasse mir die "frühesten" 10 anzeigen, das sind aber 687 Stück.
 
USE Test
drop table #t2
GO
SELECT systab.name AS TN,syscol.name AS CN into #t2
FROM sys.tables AS SYSTAB
INNER JOIN sys.columns syscol ON SYSTAB.OBJECT_ID = syscol.OBJECT_ID
where system_type_id = 61
order by systab.name
 
select * from #T2
 
dann bekomme ich ein Ergebniss das etwa so aussieht (Beispiel):
 
TN                    CN
Users                created_at
Users                last_logged_in
Contract            created_at
usw ...
687 rows
 
wie mache ich jetzt ein
 
use #T2
select  CN from TN
 
oder habt ihr einen ganz anderen Ansatz ?
 
Danke !
 
lg
Stefan
 
 
Geschrieben (bearbeitet)

Hallo Scurfy,

 

#t2 ist keine Datenbank daher kannst du nicht mit USE arbeiten

 

ich würde den 2. Teil folgendermaßen schreiben:

 

declare @sql varchar(6000)

set @sql = ';'

SELECT @sql = @sql + 'SELECT TOP 1 ' + CN + ' FROM ' + TN + ' ORDER BY ' + CN + ';' FROM #t2

print @sql

exec sp_sqlexec @SQL

 

Bei Bedarf kannst du das TOP 1 ja auch erhöhen. Falls die Größe der Variable @SQL zu klein ist musst du eventuell die dann noch vergrößern oder die Abfrage eingrenzen.  

 

Gruß MDD

bearbeitet von MDD
Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Erstelle ein Benutzerkonto oder melde dich an, um zu kommentieren

Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können

Benutzerkonto erstellen

Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!

Neues Benutzerkonto erstellen

Anmelden

Du hast bereits ein Benutzerkonto? Melde dich hier an.

Jetzt anmelden
×
×
  • Neu erstellen...