USAR ADO DATA CONTROL OU NAO

USUARIO.EXCLUIDOS 26/11/2006 21:13:12
#186308
não sei mais o que usar se o ado data control ligado aos controles do formulario ou programção
via codigo. tenho uma formulario com uma tab strip com duas guias na primeira ha um datagrid
na segunda controles textbox com os diversos campos. se uso programção via codigo ao clicar no
botão gravar que chama o metodo update se não há registros no banco de dados o ado informa o erro
3021 dizendo que tanto EOF COMO BOF são verdadeiros e que a gravação do registro corrente
exige a existencia de um registro. como é isso o usuario do meu programa não pode deletar todos
os registros e começar a adicionar um novo? como tratar esse erro?
Se uso o Ado data control ligado ao datagrid e aos textbox na outra guia do tabstrip esse erro
não acontece. Mas agora se o usuario clica no botão gravar sem preencher nenhum campo(quero dar
ao usuario o direito de gravar um registro vazio)é o datagrid quem reclama dizendo que a linha
a ser acrescentada não pode estar vazia e que pelo menos um campo tem de ser preenchido.
pior se clico em cancelar(chamando o metodo cancel update) ou seja estou dizendo ao sistema que
não quero gravar nada a mesma coisa acontece. Se eu digito alguma coisa em algum campo e clico
em cancelar o data grid não reclama - ELE GRAVA O QUE EU DIGITEI CHAMANDO O CANCEL UPDATE
num sistema que vai ter no maximo dez mil registros embora com 3 duzias de formulario acessando
uma base de dados access faz diferença usar o ado data control ou programação via codigo sob o
ponto de vista do desempenho. Se sim uma base de dados MySQl 5.0 seria mais robusta do que usando
o access? ele pode ser usado com o ado e vb?

obrigado a todos desde já
deltanusigma

WEBMASTER 27/11/2006 11:03:30
#186394
Utilizar Data Control é uma técnica vantajosa pelo lado da agilidade, mas o gerenciamento e até mesmo o conhecimento da base de dados não se aprofundam.

Como voce mesmo ja viu, o gerenciamento de erros e ate do fluxo do programa se perde um pouco.

E sim, usar o MySQL é bem melhor que o Access.
USUARIO.EXCLUIDOS 27/11/2006 11:28:53
#186404
Carinha, tamos que lembrar que o que é mais fácil nem sempre é o melhor. Usar ADO Datacontrol é fácil, porém fica extremamente lento com um volume considerável de dados, pois seus "selects" chamam o DataControl que faz chamadas para o Jet, que chama o Provider que acessa o banco... Pra que dar toda essa volta? Melhor mesmo é chamar direto, um pouco mais trabalhoso, mas deixará seu sistema mais robusto. Sem contar que "piloto automático" nem sempre resolve tudo, vc terá mesmo que fazer seus próprios controles de EOF, BOF, etc. E com certeza serão mais confiáveis.

Quanto ao banco, sem comentários... Access não é banco, é quebra-galho. Use sem medo o MySQL, que está show de bola na versão 5...
Tópico encerrado , respostas não são mais permitidas