MELHOR FORMA DE COMPARTILHAMENTO DE BANCO DE DADOS
GOSTARIA DE SABER COMO FAÇO PRA COMPARTILHAR UM BANCO DE DADOS (MDB) USANDO O DAO?
Voce quer acessa-lo pela rede, e isso ?
basta abrir o bd com set db = opendatabase("\
omemicro
omecompartilhamento\banco.mdb")
basta abrir o bd com set db = opendatabase("\
omemicro
omecompartilhamento\banco.mdb")
certo.... sim webmaster... e na questao do gerenciamento de registro... tipo quando eu abro em um terminal ele abrir com o registro 1 ... quando eu estou abrindo em outro terminal ele esta pegando o mesmo registro... 1... gostaria de saber como faço pra contorna isso.... no caso pegar o proximo numero....
Rapaz... eu geralmente altero os dados através de um SQL Update. assim eu evito problemas com bloqueios de registros.
db.execute "Update tblClientes Set Nome='" & txtNome & "',Endereco='" & txtEndereco & "' WHERE CodigoCliente=" & TxtCodigo
db.execute "Update tblClientes Set Nome='" & txtNome & "',Endereco='" & txtEndereco & "' WHERE CodigoCliente=" & TxtCodigo
KINGX, vc pode criar uma tabela de nome (CODIGOS) com os seguintes campos (TABELA tipo string e CODIGO tipo NUMERO) dai toda vez que vc gravar um registro vc vai pegar o codigo desta tabela (que armazenará sempre o proximo registro) exemplo:
Os registros ficaram assim(exemplo)
TABELA CODIGO
CLIENTES 4
PRODUTO 10
FORNEC 1
Isto quer dizer que o proximo codigo do cliente a ser gravado será o 4 e o proximo do produto será 10 e assim por diante...
Espero ter ajudado(dado uma luz).
Public Function NovoCodigo(ByVal vsTabela As String, BYVAL vbAtualiza as boolean) As Double
Dim Sql As String
Dim tbl As rdoResultset
Inicio:
vsTabela = UCase(Trim(vsTabela))
Sql = ""
Sql = "SELECT TABELA,CODIGO FROM CODIGOS WHERE TABELA = '" & vsTabela & "' ORDER BY 1, 2"
Set tbl = vBanco.OpenResultset(Sql, rdOpenKeyset, rdConcurRowVer)
If tbl.EOF Then
If vbAtualiza Then
tbl.AddNew
tbl!Tabela = vsTabela
tbl!Codigo = 2
tbl.Update
End If
tbl.Close
NovoCodigo = 1
Exit Function
Else
If vbAtualiza Then
NovoCodigo = tbl!Codigo
tbl.Edit
tbl!Codigo = tbl!Codigo + 1
tbl.Update
Else
NovoCodigo = tbl!Codigo
End If
End If
tbl.Close: If vBanco.RowsAffected = 0 Then GoTo Erro
Exit Function
Erro:
GoTo Inicio
End Function
Os registros ficaram assim(exemplo)
TABELA CODIGO
CLIENTES 4
PRODUTO 10
FORNEC 1
Isto quer dizer que o proximo codigo do cliente a ser gravado será o 4 e o proximo do produto será 10 e assim por diante...
Espero ter ajudado(dado uma luz).
Tópico encerrado , respostas não são mais permitidas