Tema: Workspace
Ver Mensaje Individual
  #3 (permalink)  
Antiguo 17/02/2011, 02:26
Avatar de Gakex
Gakex
 
Fecha de Ingreso: enero-2009
Mensajes: 137
Antigüedad: 16 años
Puntos: 4
Respuesta: Workspace

ya quedo!

Básicamente es cuestión de priorizar los recursos que están referenciados al proyecto en cuestión.
yo las acomode como en la imagen de abajo.


Uploaded with ImageShack.us
aquí dejo el código de este ejercicio.

que lo que hace según Microsoft es agilizar el llenado de la base de datos realizando una transacción.


Código:
Sub Trans(datos As String)
         Dim Starttime, Endtime
         Dim db As Database
         Dim t As Recordset
         Dim i As Integer
         Dim tempName As String
         Dim temphone As String

         
         Set db = DBEngine.Workspaces(0).OpenDatabase(datos) ' Uses a
          ' copy of datos.MDB.
         Set t = db.OpenRecordset("Publishers", dbOpenDynaset)
         Starttime = Now
         BeginTrans  ' Add this and CommitTrans (below) for greater speed.
         For i = 0 To 10000
            tempName = "testname" & Str$(i) ' Make an arbitrary unique
                                            '  string.
            tempPhone = Str$(i)             ' Make arbitrary number.
            t.AddNew ' AddNew clears copy buffer to prepare for new record.
            't!PubID = 30 + i   ' Set primary key to unique value.
            t!Name = tempName  ' Set Name field to unique value.
            t!Telephone = tempPhone  ' Set Telephone field to unique value.
            t.Update   ' Write the record to disk or to transaction buffer.
         Next i
         CommitTrans   ' Add this and BeginTrans (above) for greater speed.
         Endtime = Now
         MsgBox "Time required= " & Format(Endtime - Starttime, "hh:mm:ss")
         t.Close
         db.Close
         End
End Sub

Private Sub Form_Load()
Trans (App.Path & "/BIBLIO.MDB")
End Sub
Y bueno una transacción es como una regla condicional todo o nada para cuando se tienen que hacer varias operaciones en una base de datos con el objetivo de que nada se quede a la mitad, en otras palabras si hay un problema de energia y no se termina la operacion correctamente, la base de datos no sera modificada.

exactamente no se como funciona, pero esta delimitada por dos métodos
  • BeginTrans que comienza una nueva transacción
  • CommitTrans que termina la operación y en este caso da el visto bueno y termina la transacción
  • RollbackTrans este cancela cualquier movimiento hecho durante la transacción.

y con esto queda cerrado el tema que mas que nada se trato de las transacciones jeje.