Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Importer dans SQL serveur une table Foxpro contenant des dates vides

4 réponses
Avatar
TedIF
Bonjour,

Je tente d'importer (via DTS) une table Foxpro 2.6 dans une base
Sql2000. Dans cette table j'ai des colonnes de type date avec certaines
valeurs non renseignées. Dans l'apercu du DTS les dates normalement
vides s'affichent comme 1899-12-30 et si je poursuis l'importation,
j'obtiens un message d'erreur :
Dépassement de capacités des données.
J'ai essayé plusieurs driver ODBC mais en vain.

Où est l'erreur ? Une piste ?

Merci d'avance.

--

Dominique

4 réponses

Avatar
Thierry
Bonjour,
Importer dans une table SQL ayant des colonne de type datetime au lieu de
smalldatetime.( la date 30/12/1899 est dans la plage des dates autorisées
par le type datetime)
Ensuite, je conseillerais de remplacer ces valeurs par NULL.


--
Thierry


"TedIF" a écrit dans le message de news:

Bonjour,

Je tente d'importer (via DTS) une table Foxpro 2.6 dans une base Sql2000.
Dans cette table j'ai des colonnes de type date avec certaines valeurs non
renseignées. Dans l'apercu du DTS les dates normalement vides s'affichent
comme 1899-12-30 et si je poursuis l'importation, j'obtiens un message
d'erreur :
Dépassement de capacités des données.
J'ai essayé plusieurs driver ODBC mais en vain.

Où est l'erreur ? Une piste ?

Merci d'avance.

--

Dominique



Avatar
TedIF
Thierry a exprimé avec précision :
Importer dans une table SQL ayant des colonne de type datetime au lieu de
smalldatetime.( la date 30/12/1899 est dans la plage des dates autorisées par
le type datetime)
Ensuite, je conseillerais de remplacer ces valeurs par NULL.



Effectivement c'est une solution possible, mais un peu lourde dans mon
cas car j'ai de nombreuses tables à importer avec de nombreuses dates,
et ces importations sont à faire plusieurs fois.

J'aimerai bien trouver une façon plus simple.

Merci

--

Dominique
Avatar
Thierry
Utilises ce script DTS pour la transformation des colonnes de type date
Foxpro vers smalldatetime SQL.

function Main()
{
if (DTSSource("ColonneDate")<1/1/1900)
DTSDestination("ColonneDate") = null
else
DTSDestination("ColonneDate") = DTSSource("ColonneDate") ;

return(DTSTransformStat_OK);
}



--
Thierry


"TedIF" a écrit dans le message de news:

Thierry a exprimé avec précision :
Importer dans une table SQL ayant des colonne de type datetime au lieu de
smalldatetime.( la date 30/12/1899 est dans la plage des dates autorisées
par le type datetime)
Ensuite, je conseillerais de remplacer ces valeurs par NULL.



Effectivement c'est une solution possible, mais un peu lourde dans mon cas
car j'ai de nombreuses tables à importer avec de nombreuses dates, et ces
importations sont à faire plusieurs fois.

J'aimerai bien trouver une façon plus simple.

Merci

--

Dominique



Avatar
TedIF
Thierry a couché sur son écran :
Utilises ce script DTS pour la transformation des colonnes de type date
Foxpro vers smalldatetime SQL.

function Main()
{
if (DTSSource("ColonneDate")<1/1/1900)
DTSDestination("ColonneDate") = null
else
DTSDestination("ColonneDate") = DTSSource("ColonneDate") ;

return(DTSTransformStat_OK);
}



--
Thierry


"TedIF" a écrit dans le message de news:

Thierry a exprimé avec précision :
Importer dans une table SQL ayant des colonne de type datetime au lieu de
smalldatetime.( la date 30/12/1899 est dans la plage des dates autorisées
par le type datetime)
Ensuite, je conseillerais de remplacer ces valeurs par NULL.



Effectivement c'est une solution possible, mais un peu lourde dans mon cas
car j'ai de nombreuses tables à importer avec de nombreuses dates, et ces
importations sont à faire plusieurs fois.

J'aimerai bien trouver une façon plus simple.

Merci

--

Dominique






Merci bien

--

Dominique