VB 6 X ACCESS - CONEXAO

BRDIAS 02/02/2010 11:02:36
#333389
dae pessoas como vao?
entao, to aprendendo essa linguagem para um pequeno peojeto da facul e gostaria da opinião de vcs sobre conexão a bando de dados access
hoje (copiado da net) uso o seguinte seguinte:

no modulo
Citação:

Public CON As New ADODB.Connection
Public CMD As New ADODB.Command
Public RS As New ADODB.Recordset

Public Sub ConectBanco(Usuario As String, Senha As String, Banco As String)
CON.Open [Ô]DSN=[Ô] & Banco & [Ô];USER=[Ô] & Usuario & [Ô];PWD=[Ô] & Senha & [Ô][Ô]
CMD.ActiveConnection = CON
RS.CursorLocation = adUseClient
End Sub

]

em uma tela que tem inclusao, consultas, exclusoes e alteracoes uso da seguinte forma:

Citação:

Sql = [Ô]INSERT INTO TB_CAD_USUARIO [Ô]
Sql = Sql & [Ô](NOME,FUNCAO,LOGIN,SENHA,BLOCK,TROCARSENHA) [Ô]
Sql = Sql & [Ô]VALUES [Ô]
Sql = Sql & [Ô]([Ô]
Sql = Sql & [Ô][ô][Ô] & Trim(.txtNome) & [Ô][ô],[Ô]
Sql = Sql & [Ô][ô][Ô] & Trim(.txtFuncao) & [Ô][ô],[Ô]
Sql = Sql & [Ô][ô][Ô] & Trim(.txtLogin) & [Ô][ô],[Ô]
Sql = Sql & [Ô][ô][Ô] & Cript(.txtConfirmacao) & [Ô][ô],[Ô]
Sql = Sql & [Ô][ô][Ô] & IIf(.chkBlock.Value = 1, [Ô]1[Ô], [Ô]0[Ô]) & [Ô][ô],[Ô]
Sql = Sql & [Ô][ô][Ô] & IIf(.chkAltSenha.Value = 1, [Ô]1[Ô], [Ô]0[Ô]) & [Ô][ô])[Ô]

CON.BeginTrans

CON.Execute sSQL

CON.CommitTrans



e para consultar, assim:

Citação:

Sql = [Ô]SELECT * FROM TB_CAD_USUARIO WHERE LOGIN = [ô][Ô] & Trim(.txtLogin) & [Ô][ô][Ô]

If RS.State = 1 Then
RS.Close
End If
CMD.CommandText = Sql
If RS.State = 0 Then
RS.Open CMD
End If
If Not RS.EOF Then RS.MoveFirst



bom, pode ser impressao minas mas as vezes sinto as operacoes um pouco lenta...
alguem poderia me dar uma dica para melhorar essas operacoes e conexão com o bd
achei um artigo intitulado ADO-Aumentando o desempenho -> http://www.vbmania.com.br/pages/index.php?varModulo=Detalhe&varID=2115
achei interessante mais ta totalmente diferente do meu ..
bom, eh isso... grande abraco a todos.
MADMAX 02/02/2010 11:17:44
#333391
Criar indices nos campos chaves deixa a pesquisa bem mais rapida , da uma olhada aqui http://office.microsoft.com/pt-br/access/HA102103471046.aspx que deve te esclarecer ,

Mas não espere milagres do ACCESS pois no meu ver para aprender e bom , mais para uso efetivo e muito fraco com poucos recursos, sem contar que quando o banco atinge um determinado tamanho so da problemas , ja que hoje tem varios bancos free de qualidade por ai Como o Oracle Database Express Edition , Microsoft Sql Server Express , MySQL, PostgreSQL.
BRDIAS 02/02/2010 11:30:05
#333396
blz... porem, nao consigo acessar nenhum site da microsoft... nao sei pq mas ta dando fora do ar...
e o lance com o access eh so para esse projeto mesmo.... e qual desses bancos de dados vc me indicaria ?
vlw
MADMAX 02/02/2010 11:42:34
#333399
Acho que Microsoft Sql Server Express e um dos melhores para se começar não tem muito segredo para instalar e bem facil de usar ,,,,, tem bastante material de uso na internet... Abaixo o conteudo do site que te falei

Criar e usar um índice para melhorar o desempenho
Aplica-se a: Microsoft Office Access 2007
Se você freqüentemente pesquisa uma tabela ou classifica seus registros por um campo específico, poderá agilizar essas operações criando um índice para o campo. O Microsoft Office Access 2007 usa índices em uma tabela como você usa um índice em um livro: para localizar dados, o Office Access 2007 procura o local dos dados no índice. Em alguns casos, como em um chave primária, o Access cria automaticamente um índice. Em outros casos, é provável que você mesmo crie o índice.

Este artigo apresenta os índices e explica como decidir quais campos devem ser indexados, e como criar, excluir ou alterar um índice. Ele também explica as condições sob as quais o Access criará automaticamente os índices.

Neste artigo

--------------------------------------------------------------------------------
O que é um índice?
Decida quais campos devem ser indexados
Criar um índice
Excluir um índice
Exibir e editar índices
Criação automática de um índice

--------------------------------------------------------------------------------

O que é um índice?
Você pode usar um índice para ajudar o Microsoft Office Access 2007 a localizar e classificar registros com mais rapidez. Um índice armazena o local dos registros com base no(s) campo(s) escolhido(s) para ser(em) indexado(s). Depois que o Access obtiver o local do índice, ele poderá recuperar os dados movendo-se diretamente para o local correto. Desse modo, o uso de um índice pode ser consideravelmente mais rápido do que a procura entre todos os registros para localizar os dados.

Parte superior da página

Decida quais campos devem ser indexados
é possível criar índices com base em um único campo ou em vários campos. Você provavelmente indexará os campos que pesquisa com mais freqüência, os campos que classifica e os campos que associa a campos de outras tabelas em várias consultas de tabela. Os índices podem agilizar pesquisas e consultas, mas podem prejudicar o desempenho quando você adiciona ou atualiza dados. Quando os dados são inseridos em uma tabela que contém um ou mais campos indexados, o Access deve atualizar os índices cada vez que um registro é adicionado ou alterado. A adição de registros através de uma consulta acréscimo ou do acréscimo de registros importados provavelmente também será mais lenta se a tabela de destino contiver índices.

Observação A chave primária de uma tabela é automaticamente indexada. Para obter mais informações sobre a chave primária, consulte os artigos da seção Consulte também.

Você não pode indexar um campo cujo tipo de dados seja Objeto OLE ou Anexo. No caso dos outros campos, considere a indexação de um campo se todas as condições abaixo forem aplicáveis:

O tipo de dados do campo é Texto, Memorando, Número, Data/Hora, AutoNumeração, Moeda, Sim/Não ou Hiperlink.
Você espera procurar por valores armazenados no campo.
Você espera classificar valores no campo.
Você espera armazenar diversos valores diferentes no campo. Se muitos dos valores no campo forem iguais, provavelmente o índice não poderá acelerar significativamente as consultas.
Índices de campos múltiplos
Se você imagina que pesquisará ou classificará com freqüência dois ou mais campos de uma só vez, poderá criar um índice para essa combinação de campos. Por exemplo, se você freqüentemente define critérios para os campos Fornecedor e Nome do Produto na mesma consulta, crie um índice de campos múltiplos em ambos os campos.

Quando você classifica uma tabela por um índice de campos múltiplos, o Access classifica primeiramente pelo primeiro campo definido para o índice. Você define a ordem dos campos quando cria um índice de campos múltiplos. Se existirem registros com valores duplicados no primeiro campo, o Access classificará, em seguida, pelo segundo campo definido para o índice, e assim por diante.

é possível incluir até 10 campos em um índice de campos múltiplos.

Parte superior da página

Criar um índice
Para criar um índice, primeiro decida se criará um índice de campo único ou de campos múltiplos. Para criar um índice em um campo único, defina a propriedade Indexado. A tabela a seguir lista as configurações possíveis para a propriedade Indexado.

Configuração da propriedade Indexado Significado
Não Não criar um índice neste campo (ou excluir o índice existente)
Sim (duplicação autorizada) Criar um índice neste campo
Sim (duplicação não autorizada) Criar um índice exclusivo neste campo

Se você criar um índice exclusivo, o Access não permitirá a inserção de um novo valor no campo se esse valor já existir no mesmo campo em outro registro. O Access cria automaticamente um índice exclusivo para as chaves primárias, mas você também pode proibir valores duplicados em outros campos. Por exemplo, é possível criar um índice exclusivo em um campo que armazene vários números de série, a fim de que nenhum dos dois produtos tenha o mesmo número de série.

Para obter mais informações sobre chaves primárias, clique nos links da seção Consulte também.

Criar um índice de campo único

No Painel de Navegação, clique com o botão direito do mouse no nome da tabela na qual deseja criar o índice e, em seguida, clique em Modo Design no menu de atalho.
Clique no Nome do Campo que você deseja indexar.
Em Propriedades do Campo, clique na guia Geral.
Na propriedade Indexado, clique em Sim (Duplicação Autorizada) para permitir duplicações ou em Sim (Duplicação Não Autorizada) para criar um índice exclusivo.
Para salvar as alterações, clique em Salvar na Barra de Ferramentas de Acesso Rápido ou pressione CTRL+S.
Criar um índice de campos múltiplos

Para criar um índice de campos múltiplos para uma tabela, inclua uma linha para cada campo no índice e o nome do índice somente na primeira linha. O Access trata todas as linhas como parte do mesmo índice até chegar a uma linha que contenha outro nome de índice. Para inserir uma linha, clique com o botão direito do mouse no local em que deseja inserir uma linha e clique em Inserir Linhas no menu de atalho.

No Painel de Navegação, clique com o botão direito do mouse no nome da tabela na qual deseja criar o índice e, em seguida, clique em Modo Design no menu de atalho.
Na guia Design, no grupo Mostrar/Ocultar, clique em Índices.
A janela Índices é exibida. Redimensione a janela para que algumas linhas em branco apareçam e as propriedades do índice sejam exibidas.

Na coluna Nome do Índice, na primeira linha em branco, digite um nome para o índice. Você pode nomeá-lo conforme um dos campos de índice ou utilizar um outro nome.
Na coluna Nome do Campo, clique na seta e, em seguida, clique no primeiro campo que deseja usar no índice.
Na próxima linha, deixe a coluna Nome do Índice em branco e, na coluna Nome do Campo, clique no segundo campo do índice. Repita essa etapa até selecionar todos os campos a serem incluídos no índice.
Observação A ordem de classificação padrão é Crescente.

Para alterar a ordem de classificação dos valores do campo, na coluna Ordem de Classificação da janela Índices, clique em Crescente ou Decrescente.
Na janela Índices, em Propriedades do Índice, defina as propriedades do índice para a linha na coluna Nome do Índice que contém o nome do índice. Defina as propriedades de acordo com a tabela a seguir.
Rótulo Valor
Primária Se escolher Sim, o índice será a chave primária.
Exclusivo Se escolher Sim, cada valor no índice deverá ser exclusivo.
Ignorar Valores Nulos Se escolher Sim, os registros com um valor Nulo nos campos indexados serão excluídos do índice.

Para salvar as alterações, clique em Salvar na Barra de Ferramentas de Acesso Rápido.
Atalho do teclado Pressione CTRL+S.

Feche a janela Índices.
Parte superior da página

Excluir um índice
Se você achar que um índice é desnecessário ou está prejudicando muito o desempenho, exclua-o. Ao excluir um índice, remova somente o índice, e não o(s) campo(s) em que ele foi criado.

No Painel de Navegação, clique com o botão direito do mouse no nome da tabela na qual deseja excluir o índice e, em seguida, clique em Modo Design no menu de atalho.
Na guia Design, no grupo Mostrar/Ocultar, clique em Índices.
A janela Índices é exibida. Redimensione a janela para que algumas linhas em branco apareçam e as propriedades do índice sejam exibidas.

Na janela Índices, selecione a(s) linha(s) que contém(êm) o índice a ser excluído e pressione DELETE.
Para salvar as alterações, clique em Salvar na Barra de Ferramentas de Acesso Rápido.
Atalho do teclado Pressione CTRL+S.

Feche a janela Índices.
Parte superior da página

Exibir e editar índices
Talvez seja necessário ver os índices de uma tabela para analisar o impacto no desempenho ou garantir que determinados campos serão indexados.

No Painel de Navegação, clique com o botão direito do mouse no nome da tabela na qual deseja editar o índice e, em seguida, clique em Modo Design no menu de atalho.
Na guia Design, no grupo Mostrar/Ocultar, clique em Índices.
A janela Índices é exibida. Redimensione a janela para que algumas linhas em branco apareçam e as propriedades do índice sejam exibidas.

Exiba ou edite os índices e indexe as propriedades para atender às suas necessidades.
Para salvar as alterações, clique em Salvar na Barra de Ferramentas de Acesso Rápido.
Atalho do teclado Pressione CTRL+S.

Feche a janela Índices.
Parte superior da página
MADMAX 02/02/2010 11:45:00
#333401

Criação automática de índice
Em alguns casos, o Access cria automaticamente os índices para você. Por exemplo, um índice é automaticamente criado para qualquer campo que você designe como chave primária de uma tabela.

Outra fonte de criação automática de índice é a opção AutoIndexar ao Importar/Criar na caixa de diálogo Opções do Access. O Access indexa automaticamente qualquer campo com nomes que comecem ou terminem com os caracteres digitados na caixa AutoIndexar ao Importar/Criar, como ID, chave, código ou núm. Para ver ou alterar a configuração atual, execute as seguintes etapas:

Clique no Botão do Microsoft Office e, em seguida, clique em Opções do Access.
Clique em Designers de Objetos e, em Design da tabela, adicione, edite ou remova valores na caixa AutoIndexar ao Importar/Criar. Use um ponto-e-vírgula (;) para separar os valores.
Observação Se um nome de campo começar ou terminar com um dos valores listados na caixa, o campo será automaticamente indexado.

Clique em OK.
Como cada índice adicional requer trabalho extra do Access, o desempenho é prejudicado quando os dados são adicionados ou atualizados. Portanto, recomenda-se que você altere os valores mostrados na caixa AutoIndexar ao Importar/Criar ou reduza o número de valores para minimizar o número de índices criados.
MADMAX 02/02/2010 11:48:47
#333402
Lembrando que Indices ainda são aplicados nos outros bancos sendo assim o conceito de indice e bem valido de aprender para agilizar suas pesquisas.
BRDIAS 02/02/2010 12:07:57
#333404
po MAD vlw pela dica... vou estudar mais um pouco sobre o assunto...
vlw e abracos
MADMAX 02/02/2010 12:54:57
#333407
Ok sem problemas qq coisa estamos ai ....
Tópico encerrado , respostas não são mais permitidas