Copier base to base

nadir4822 Messages postés 6 Date d'inscription   Statut Membre Dernière intervention   -  
Morgothal Messages postés 1236 Date d'inscription   Statut Membre Dernière intervention   -
J'ai deux base de donner sur même serveur :
1-Windows server 2000
2-SQL server 2000
Mes deux bases sont identiques
Mais la base2 contient des informations jusqu'à 31/08/2009
Et la base 1 contient des informations jusqu'aux aujourd'hui
les deux base commence de la même année: veut dire au 01/03/2005
Je voudrai insère les informations qui me manque de la base1 ver base2
merci d'avance

5 réponses

Morgothal Messages postés 1236 Date d'inscription   Statut Membre Dernière intervention   183
 
Bonjour,
S'il n'y a qu'une table dans les deux bases, il suffit de faire :
INSERT INTO base2.table (champs) VALUES (SELECT champs from  base1.table) WHERE date>"31/08/2009") 
Avec le format date qui va bien évidemment.

Sinon, avec plusieurs tables, il faudrait insérer les ID des lignes de la tables de faits datant d'après le 31/08/2009, et copier les tables de dimensions.
0
nadir4822 Messages postés 6 Date d'inscription   Statut Membre Dernière intervention  
 
bonjour
cher amis j'ai mis la requette suivante :

INSERT INTO nombase1.dbo.table1 (champ1) VALUES
(SELECT champ from nombase2.dbo.table2 WHERE date>"2009-08-31 00:00:00.000")

analyse de requette m'envoie les messages suivant:

1-Syntaxe incorrecte vers le mot clé 'SELECT'.
2-Ligne 2 : syntaxe incorrecte vers ')'.
sache bien que tabl1 et table2 non pas ID mais sont identique dans leur création.

merci pour tous
0
Morgothal Messages postés 1236 Date d'inscription   Statut Membre Dernière intervention   183
 
Ah
Toutes mes excuses, je me suis trompé dans la syntaxe : si les données que l'on veut insérer sont sélectionnées par un SELECT, il n'y a pas de VALUES.
La requête devient donc :
INSERT INTO nombase1.dbo.table1 (champ1) 
SELECT champ from nombase2.dbo.table2 WHERE date>"2009-08-31 00:00:00.000"
0
nadir4822 Messages postés 6 Date d'inscription   Statut Membre Dernière intervention  
 
cher amis j'ai mis votre requette mais sql me retourne le message suivant

"2009-08-31 00:00:00.000 "nom de colonne incorrect


sachez que mon champs est datecreation
et que j'ai mis datecreation a la place de date
merci
0
Morgothal Messages postés 1236 Date d'inscription   Statut Membre Dernière intervention   183
 
Si c'est bien du SQL server, il faut entourer la date de simple quotes 'date' et pas des doubles "date".
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
nadir4822 Messages postés 6 Date d'inscription   Statut Membre Dernière intervention  
 
cher amis j'ai fait exactement se que vous m'avais indiquer ecrire la date en simple quotes
sql sevrer 2000 ma généré l'erreur suivante:

La conversion d'un type de données CHAR en type DATETIME a donné une valeur hors des limites des valeurs de date et d'heure.
L'instruction a été arrêtée.
0
Morgothal Messages postés 1236 Date d'inscription   Statut Membre Dernière intervention   183
 
Il faut sûrement agrandir le champ contenant la date...
0