PDA

Ver la Versión Completa : conexion a bd de access con tadoconnections se bloquea


richy08
09-08-2010, 20:40:46
buenas tardes compañeros he estado notando algo extraño en una aplicacion, les cuento yo construi una aplicacion con delphi 7, mssql 2005 , con conexiones ado, me vi en la necesidad de leer y escribir en una bd de access que es de un software de punto de venta llamado ALDELO for Restaurant, dicho software trabaja bajo licencias de las cuales solo se adquirieron dos, el detalle que manda la maquina que corre mi aplicacion al querer acceder a access es error de disco, esto solo sucede cuando las estaciones que corren el aldelo estan las dos abiertas al mismo tiempo, entonces cuando mi aplicaion quiere ir sobre la bd es cuando surge el error antes mencionado alguna idea de por que se bloquea para mi aplicacion :confused: gracias por cualquier comentario.

richy08
09-08-2010, 21:28:20
he estado viendo una copia del bd y he encontrado este codigo al parecer es para restringir el acceso es bastante raro por que si no habilito el security warning la bd abre sin problemas al parecer es para ponerle una contraseña a la bd pero me puedo sin conectar sin ella:confused: este es el codigo


Option Compare Database
Option Explicit

Private Sub Command10_click()
txtPassword.SetFocus

If Len(Trim$(txtPassword.Text)) = 0 Then
MsgBox "This database is not accessible", vbCritical, "Access Denied"
DoCmd.Quit
Else
If (Trim$(txtPassword.Text)) = "southfork" Then
DoCmd.Close
Else
MsgBox "This database is not accessible", vbCritical, "Access Denied"
DoCmd.Quit
End If
End If
End Sub

Private Sub OK_Click()
DoCmd.Quit
End Sub



y esta es mi cadena de conexion


Provider=Microsoft.Jet.OLEDB.4.0;User ID=admin;Data Source=B:\AldeloDB.mdb;Mode=Share Deny None;Extended Properties="";Persist Security Info=False;Jet OLEDB:System database="";Jet OLEDB:Registry Path="";Jet OLEDB:Database Password="";Jet OLEDB:Engine Type=5;Jet OLEDB:Database Locking Mode=1;Jet OLEDB:Global Partial Bulk Ops=2;Jet OLEDB:Global Bulk Transactions=1;Jet OLEDB:New Database Password="";Jet OLEDB:Create System Database=False;Jet OLEDB:Encrypt Database=False;Jet OLEDB:Don't Copy Locale on Compact=False;Jet OLEDB:Compact Without Replica Repair=False;Jet OLEDB:SFP=False


graciasp or cualquier idea

Neftali [Germán.Estévez]
10-08-2010, 12:26:54
el detalle que manda la maquina que corre mi aplicacion al querer acceder a access es error de disco, esto solo sucede cuando las estaciones que corren el aldelo estan las dos abiertas al mismo tiempo, entonces cuando mi aplicaion quiere ir sobre la bd es cuando surge el error antes mencionado

¿No estarás accediendo en modo-exclusivo?
¿Qué operaciones haces? ¿Es directamente al conectar?

richy08
10-08-2010, 16:52:32
¿No estarás accediendo en modo-exclusivo?
¿Qué operaciones haces? ¿Es directamente al conectar?

no el modo en que lo abro no es exclusivo, las operaciones que hago son select, insert y update, y si el error lo manda directamente al conectar pero lo mas extraño es que solo sucede en una maquina con windows 7, alguna idea de que sea:confused:

gracias por tus comentarios

richy08
12-08-2010, 17:00:18
hola neftali sabes sigo con el problema de la base de datos bloqueada no me permite ni siquiera hacer la coneccion :eek:, y me quede con lo que comentaste de que sin o abria la bd en modo exclusivo como puedo saber si la abro de ese modo exclusivo ???, segun yo no lo hago pero mas vale ir descartando problemas, la coneccion la hago por medio de una tadoconneciton estas son sus propiedades

connection string = Provider=Microsoft.Jet.OLEDB.4.0;User ID=admin;Data Source=B:\AldeloDB.mdb;Mode=Share Deny None;Extended Properties="";Persist Security Info=False;Jet OLEDB:System database="";Jet OLEDB:Registry Path="";Jet OLEDB:Database Password="";Jet OLEDB:Engine Type=5;Jet OLEDB:Database Locking Mode=1;Jet OLEDB:Global Partial Bulk Ops=2;Jet OLEDB:Global Bulk Transactions=1;Jet OLEDB:New Database Password="";Jet OLEDB:Create System Database=False;Jet OLEDB:Encrypt Database=False;Jet OLEDB:Don't Copy Locale on Compact=False;Jet OLEDB:Compact Without Replica Repair=False;Jet OLEDB:SFP=False

mode = cmsharedenynone

isolation level = ilcursorstability

loginprompt = false


gracias por cualquier comentario