PRECISO MIGRAR DE BANCO DE DADOS URGENTE

WEBIER 17/12/2010 20:27:35
#359802
Resumo de minha historia:

Trabalho com DAO e ACCESS 97

Recentemente vendi meu sistema para um mini-supermercado onde possui 2 terminais.

Estou com minha cabeça doendo de tanta reclamação por causa da lerdeza...

Sabe o que é passar um pente fino no sistema, pois eu deixei ele exurto.... tudo que podia comprometer a performance do sistema eu fiz... em relação a DAO e ACCESS 97 trabalho com grande quantidade de dados eu desistir

então quiz mudar para SQL Server Express 2005, mas não fui nem para frente e nem para traz... não conseguir nem converter o banco de dados:

Olha o ultimo topico que coloquei sobre e está em aberto até hoje:
http://www.vbmania.com.br/pages/index.php?varModulo=Forum&varMethod=abrir&varID=358856

Queria que alguem me ajudasse, pois a dona do supermercado me liga as 7hs da manha e eu tô de cabeça conte com isso:
Preciso mudar para uma base de dados que seja rapida e que aceite converter banco de dados access para ela.... pois preciso dos dados e da estrututa das tabelas... e o mais importante que seja facil, pois nunca mexi em nada que não fosse access

Alguem pode me ensinar os caminhos das pedras?

Obrigado!
LANCECOM 17/12/2010 21:00:02
#359803
Vc tem as opções MYSQL, firebird
Eu pessoalmente prefiro o Mysql
Mas uma duvida, eu tenho o sistema em varios mercados em access e nunca tive problema.
TALES 17/12/2010 21:13:57
#359805
Tive que converter uma vez um banco em access xp para o sql server 2005 express e usei o Migration for Microsoft Access. Dá uma olhada neste link e veja se te ajuda.

http://www.microsoft.com/Sqlserver/2005/en/us/migration-access.aspx
SNNIFFER 17/12/2010 21:14:17
#359806
Cara uso o MySQL e nunca tive problemas com a velocidade de acesso, em relação a conversão do MDB para MySQL, existem os:
Acess to Mysql -[txt-color=#0000f0] http://www.bullzip.com/download.php[/txt-color] - Com dicas no [txt-color=#0000f0]http://www.macoratti.net/net_msql.htm[/txt-color]




Boa sorte.
MARCELO.TREZE 17/12/2010 21:37:44
#359808
WEBIER como os colegas falaram o MySQL é uma ótima opção, porém uma rede bem montada, também faz a diferença, verifique cabos monte um bom servidor, de preferencia que seja dedicado... pois cabeamentos mal feitos interferem muito no desepenho.

ah, vc pode trabalhar com o mysql conectado, ou seja conecta ao iniciar o programa e desconecta a encerrar, isso já melhora muita coisa a conexão.



WEBIER 17/12/2010 22:13:03
#359812
estou nessa pagina aqui para baixar o mysql
http://www.mysql.com/downloads/mysql/

qual que eu baixo?

Uso WinXP 32bits
MARCOSLING 17/12/2010 22:20:31
#359813
Citação:

:
Resumo de minha historia:

Trabalho com DAO e ACCESS 97

Recentemente vendi meu sistema para um mini-supermercado onde possui 2 terminais.

Estou com minha cabeça doendo de tanta reclamação por causa da lerdeza...

Sabe o que é passar um pente fino no sistema, pois eu deixei ele exurto.... tudo que podia comprometer a performance do sistema eu fiz... em relação a DAO e ACCESS 97 trabalho com grande quantidade de dados eu desistir

então quiz mudar para SQL Server Express 2005, mas não fui nem para frente e nem para traz... não conseguir nem converter o banco de dados:

Olha o ultimo topico que coloquei sobre e está em aberto até hoje:
http://www.vbmania.com.br/pages/index.php?varModulo=Forum&varMethod=abrir&varID=358856

Queria que alguem me ajudasse, pois a dona do supermercado me liga as 7hs da manha e eu tô de cabeça conte com isso:
Preciso mudar para uma base de dados que seja rapida e que aceite converter banco de dados access para ela.... pois preciso dos dados e da estrututa das tabelas... e o mais importante que seja facil, pois nunca mexi em nada que não fosse access

Alguem pode me ensinar os caminhos das pedras?

Obrigado!



Mas fica lento só com dois terminais?

Não adianta trocar de banco de dados e ficar a mesma coisa.
Já tentou verificar o motivo da lentidão?
WEBIER 17/12/2010 22:40:49
#359816
sao 2 maquinas apenas...

um é o servidor e o outro e terminal, mas ambos trabalha como terminal... só que o onde tá o banco de dados é bem mais rapido...

os 2 ficam aberto um tela de pdv... ai quando passa no leitor de codigo de barra no produto ele vai no banco de dados para ver se o produto existe, depois se tem no estoque e depois traz os dados dele e insere ele numa outra tabela (PEDIDO_ITENS) e depois preenche um flexgrid onde exibi todos os produtos daquela venda.

Todos esses processos de consulta, inserção, preenchimento e fechamento da venda sao lentos....

somente no terminal onde não tem o banco de dados

já troquei cabo
já troquei o hub para swicth
já coloquei placa de rede offboard
já limpei os 2 pcs e deixei só o windows e meu sistema instalado e nada mais
já olhei cada letra das inumeras linhas de código de meu sistema

mesmo assim no terminal onde não tá a base de dados é mais lento mesmo.

acesso a base de dados assim:
[txt-color=#e80000][ô]no modulo[/txt-color]
Global BD As Database
Global DB As Database
Global AreaTrabalho As Workspace

Sub execSQL(SQL As String)
Set DB = OpenDatabase([Ô]\\SERVIDOR\SISTEMA\Cyberbase.mdb[Ô])
DB.Execute SQL
DB.Close
End Sub

Sub ABRIR_BD_SEM_DATA1()
Set AreaTrabalho = DBEngine.Workspaces(0)
Set BD = AreaTrabalho.OpenDatabase([Ô]\\SERVIDOR\SISTEMA\Cyberbase.mdb[Ô], False, False)
End Sub


[txt-color=#e80000][ô]no form[/txt-color]
[txt-color=#0000f0][ô]para inserir produtos na tabela[/txt-color]
    Verifica_QuantEstoque
If VERIFICAR_QUANTIDADE = True Then
LimparObjetos_Produto
Exit Sub
End If

[ô]ADICIONAR O PRODUTO
Autonumeracao_Itens
execSQL [Ô]INSERT INTO PEDIDOS_ITENS VALUES([Ô] & Y & [Ô],[Ô] & txtCodPedido.Text & [Ô], 0 , [Ô] & txtCodProduto.Text & [Ô],[ô][Ô] & lblDesc.Caption & [Ô][ô],[ô][Ô] & txtValor.Text & [Ô][ô],[Ô] & Replace(txtQuant.Text, [Ô],[Ô], [Ô].[Ô]) & [Ô], [ô][Ô] & txtTotal.Text & [Ô][ô], [ô]R[ô], 0, #[Ô] & Format(Date, [Ô]MM/DD/YYYY[Ô]) & [Ô]#, [ô]BALCÃO[ô])[Ô]

LimparObjetos_Produto

[ô]MOSTRAR NA GRADE
Mostrar_Produtos
txtCodBarra.SetFocus


[txt-color=#0000f0][ô]as rotinas mensiondas ai em cima[/txt-color]
Private Sub Autonumeracao_Itens()
Call ABRIR_BD_SEM_DATA1
SQL = [Ô]SELECT MAX(CODIGO) as ULTIMO_ITEM FROM PEDIDOS_ITENS[Ô]
Set RS = BD.OpenRecordset(SQL, dbOpenSnapshot)

Y = IIf(IsNull(RS.Fields!ULTIMO_ITEM) = True, 1, RS.Fields!ULTIMO_ITEM + 1)
End Sub


Private Sub Mostrar_Produtos()
If txtCodPedido.Text = [Ô][Ô] Then Exit Sub
Call ABRIR_BD_SEM_DATA1
SQL = [Ô]SELECT CODIGO, COD_PRODUTO, DESCRICAO, Preco, QUANTIDADE, Total FROM PEDIDOS_ITENS WHERE COD_PEDIDO = [Ô] & txtCodPedido.Text & [Ô] ORDER BY CODIGO DESC[Ô]
Set RS = BD.OpenRecordset(SQL, dbOpenSnapshot)

FormatarGrid
End Sub


Private Sub Verifica_Existencia_Produto()
If txtCodBarra.Text = [Ô][Ô] Then Exit Sub
Call ABRIR_BD_SEM_DATA1
SQL = [Ô]SELECT (PRODUTOS.COD_BARRA) AS VAR_CODBARRA, (PRODUTOS.UNID_MEDIDA) AS VAR_UNIDMED, (PRODUTOS.CODIGO) AS VAR_CODPROD, (PRODUTOS.DESCRICAO) AS VAR_DESC, (PRODUTOS_ENTRADA_ITENS.VENDA) AS VAR_VENDA FROM (PRODUTOS LEFT JOIN ULTIMAS_ENTRADAS ON PRODUTOS.CODIGO = ULTIMAS_ENTRADAS.CODIGO_PRODUTO) LEFT JOIN PRODUTOS_ENTRADA_ITENS ON (ULTIMAS_ENTRADAS.CODIGO_PRODUTO = PRODUTOS_ENTRADA_ITENS.CODIGO_PRODUTO) AND (ULTIMAS_ENTRADAS.ULTENTRADA = PRODUTOS_ENTRADA_ITENS.CODIGO_ENTRADA) WHERE PRODUTOS.COD_BARRA = [ô][Ô] & txtCodBarra.Text & [Ô][ô] and PRODUTOS.ATIVO = TRUE[Ô]
Set RS = BD.OpenRecordset(SQL, dbOpenSnapshot)

EXISTENCIA_PRODUTO = False

If RS.RecordCount <= 0 Then
MsgBox [Ô]Produto não cadastrado![Ô], vbInformation, [Ô]aviso do Sistema[Ô]
EXISTENCIA_PRODUTO = True
End If
End Sub



Tive o cuidado em todas as consultas colocar dbOpenSnapshot para consumir menos menoria
Tive o cuidade de nunca usar tabelax.* para não trazer campos desnecessarios

então onde estou errando?
MARCOSLING 17/12/2010 23:33:44
#359817
Tentou plugar outro computador na rede? Poder ser a instalação do windows.
Qual o tamanho do banco de dados?
Os índices da tabela estão ok?
Já tentou usar o banco de dados no terminal para ver se mudava alguma coisa?
Já tentou deixar o objeto database aberto durante a venda?
Notou a velocidade na hora de abrir o banco de dados?

OTAVIOFAVERO 17/12/2010 23:45:14
#359818
use o ems mssql

que tem otimas ferramentas

ou o dts do mssql 2005

abç
Página 1 de 8 [75 registro(s)]
Tópico encerrado , respostas não são mais permitidas