Bonjour,
J'ai un petit souci : Un portable doit partir le soir avec la derniere version de la base de donnée celui ci ne sera connecté a aucun reseau.
Le serveur SQL Server 2000.
Le portable SQL Server 2005 express edition + vista
J'ai donc fait un bout de code afin de récupéré une sauvegarde de la base :
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
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58 private sub form_load() Set en = rdoEnvironments(0) en.CursorDriver = rdUseOdbc Set cn = en.OpenConnection(dsName:="", prompt:=rdDriverNoPrompt, Connect:="uid=sa;pwd=mdp;driver={SQL Server};" & "server=monbeauserver;database=mabase;") cn.QueryTimeout = 100000 Set cn2 = en.OpenConnection(dsName:="", prompt:=rdDriverNoPrompt, Connect:="uid=sa;pwd=mdp;driver={SQL Server};" & "server=localhost;database=mabase;") cn.QueryTimeout = 100000 end sub Private Sub Command1_Click() Dim requete As String Dim result As rdoResultset Dim requete2 As String Dim result2 As rdoResultset On Error GoTo Command1_Click_Error requete = "BACKUP DATABASE ma_base TO DISK=N'\\(Un serveur public)\PERMANENCE\save.bak'" lbl_info = "Sauvegarde de la base exploitation " Form1.Refresh cn.Execute (requete) requete = " USE master " _ & " SELECT 'kill',spid " _ & " From sysprocesses " _ & " WHERE dbid=db_id('mabase') " Set result = cn2.OpenResultset(requete) While Not result.EOF requete2 = result(0) & " " & result(1) Set result2 = cn2.OpenResultset(requete2) result.MoveNext Wend lbl_info = "Rapatriement du fichier DATA" Form1.Refresh FileCopy "z:\save.bak", "d:\save.bak" requete = "RESTORE DATABASE mabase FROM DISK=N'D:\save.bak' with replace " lbl_info = "Restauration de la base" Form1.Refresh cn2.Execute (requete) cn2.Close MsgBox ("Mise a jour du portable terminée avec succés") End Sub
Probleme N° 1 -> Le timeout n'est pas pris
Probleme N° 2 -> La restauration ne marche pas : sous l'entreprise manager la base est signalé comme étént en cours de restauration et on ne peut plus y acceder.
Par contre si je lance la requete de restauration sous l'analyseur de requete la restauration se deroule bien.
Par contre le systeme est pas figé et je suis preneur de toute autre solution
Merci d'avance a tous et une mega bonne journée !!!!
A bientot,
Ntotor








Répondre avec citation
Partager