• Revista PROGRAMAR: Já está disponível a edição #53 da revista programar. Faz já o download aqui!

zephirus

Acesso simultâneo a base de dados sql

2 mensagens neste tópico

Olá,

Tenho uma dúvida em relação ao acesso a uma base de dados.

Tenho este código:

Dim SQLconnect As New SQLiteConnection()
Dim SQLcommand As SQLiteCommand
SQLconnect.ConnectionString = "Data Source=" & appPath & databaseFile
SQLconnect.Open()
SQLcommand = SQLconnect.CreateCommand
SQLcommand.CommandText = "...comando..."
SQLcommand.ExecuteNonQuery()
SQLcommand.Dispose()
SQLconnect.Close()

A minha base de dados está numa drive partilhada e o meu programa que usa o código acima está instalado em várias máquinas, ou seja, várias pessoas ao mesmo tempo podem chamar o código acima. Por esse motivo, por vezes obtenho um erro a dizer que a base de dados já está aberta. Não entendo é o porquê visto que alterei o código acima para o seguinte (acrescentei a linha 'System.Threading.Thread.CurrentThread.Sleep(10000)')...

Dim SQLconnect As New SQLiteConnection()
Dim SQLcommand As SQLiteCommand
SQLconnect.ConnectionString = "Data Source=" & appPath & databaseFile
SQLconnect.Open()
SQLcommand = SQLconnect.CreateCommand
SQLcommand.CommandText = "...comando..."
SQLcommand.ExecuteNonQuery()
System.Threading.Thread.CurrentThread.Sleep(10000)
SQLcommand.Dispose()
SQLconnect.Close()

...e depois testei chamar esse código e 2seg depois chamar o mesmo código noutro pc e não crashou. Não é suposto a base de dados estar aberta quando eu faço o segundo pedido? Não consigo perceber... Alguém tem alguma ideia?

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Ninguém me pode ajudar em relação a isto?

Obrigado.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!


Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.


Entrar Agora