Bonsoir tout le monde,

Cela faisait trèèèèès longtemps que je n'avais posté ici

Jusque là, je trouvais toujours plus ou moins comment me débrouiller.

Si je prends la plume ce soir, c'est pour quérir votre aide donc !

Le pitch :

Je possède une base sous Microsoft sql server (qui sert pour le gestionnaire de ticket de la boite). Sur cette base, pour des raisons de licence, j'ai dû supprimer des données... je sais....
Nous avions atteint les 10 Go de SQL Express, le service devait tourner le weekend absolument.

J'ai tout de même effectué une sauvegarde complète.

Sauvegarde restaurée sur une nouvelle base du même serveur.

J'arrive retrouver les données de la base restaurée et qui sont manquantes sur la base de production.

J'utilise cette requête (si jamais vous voyez quelque chose de faux^^)

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
 
select * from [_SMDBA_].[_TELDETAI_] as TI23
left join [TI20].[_SMDBA_].[_TELDETAI_] as TI20 
on TI23.sequence = TI20.SEQUENCE
where TI20.SEQUENCE is null
Je retrouve avec 1412 enregistrements.

Maintenant je souhaiterais les insérer dans la même table mais de la base de production :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
 
begin tran
INSERT INTO [TI20].[_SMDBA_].[_TELDETAI_]
 ([SEQUENCE]
           ,[LASTMODIFIED]
           ,[LASTUSER]
           ,[_GROUP_]
           ,[NOTE]
           ,[PROBLEM #]
           ,[PDATE]
           ,[PERSON]
           ,[TIME SPENT]
           ,[ACTION]
           ,[COMMANDLINE]
           ,[_INACTIVE_:]
           ,[LINK_MSCRM_ACTIVITYID]
           ,[FROM_GROUP:]
           ,[TO_GROUP:]
           ,[SESSIONID]
           ,[EMAILTOEMAILFROM]
           ,[SEQ_EMAILMGMT]
           ,[NOTETYPE]
           ,[ISPRIVATE]
           ,[REQUESTOR#]
           ,[CHARGE]
           ,[TI11_NoteID])
     VALUES
(select * from [_SMDBA_].[_TELDETAI_] as TI23
left join [TI20].[_SMDBA_].[_TELDETAI_] as TI20 
on TI23.sequence = TI20.SEQUENCE
where TI20.SEQUENCE is null)

Et là... bah ça marche pas. Et le message d'erreur n'est pas des plus clair malheureusement

Msg*156, Niveau*15, État*1, Ligne*37
Syntaxe incorrecte vers le mot clé 'select'.
Msg*102, Niveau*15, État*1, Ligne*40
Syntaxe incorrecte vers ')'.

Heure de fin*: 2024-02-02T18:46:39.6441641+01:00
Est-ce que par le plus grand des hasards, vous auriez une idée ?

TI20 étant la base de production avec les données manquantes.

Ti_2023 étant la base restaurée complète.

Comme j'ai plusieurs tables à faire, si celle-ci passe, les autres passeront

Merci par avance pour votre aide et désolé pour ce long message !