USUÁRIO:      SENHA:        SALVAR LOGIN ?    Adicione o VBWEB na sua lista de favoritos   Fale conosco 

 

  Fórum

  Visual Basic
Voltar
Autor Assunto:  Stored Procedures
dr.X
não registrado
ENUNCIADA !
Postada em 21/05/2012 16:44 hs   
No vb6 e mysql são indicadas para um tempo de resposta mais rápido ?
Manda uns exemplos aí pessoal, por gentileza.
 
Valeu
 
   
Treze
Pontos: 2843 Pontos: 2843
SÃO VICENTE
SP - BRASIL
ENUNCIADA !
Postada em 21/05/2012 19:38 hs            
É colega vou explicar de forma superficial, pois existem 'n' metodos

Comparação:

A SP(stored procedure) é como se fosse uma função do Visual Basic, veja um exemplo de função.

Public Function MostrarNome(nome As String)
msgbox nome
End Sub

chamandoa função acima

Call MotrarNome("Marcelo")

e o resultado será meu nome aparecendo na tela,a STORED PROCEDURE funciona basicamente da mesma maneira

Podemos usar 3 tipos de parametros existentes em uma SP no mysql

IN    – Para entrada de dados.
OUT   – Para saida de dados.
INOUT – Para entrada e saida de dados.

Criaremos umas procedures com as funcoes de INSERIR e MOSTRAR dados de uma tabela com entrada de parametros.

——————————-
Criando Stored procedure para inserir dados em nossa tabela tbl_cliente
Isso deve ser feito diretamente no prompt do MYSQL

create procedure add_cliente
(
IN    p_nome    varchar(50),
IN    p_cpf    varchar(20)
)

Begin

insert into tbl_cliente
(
cli_nome,
cli_cpf
)values(
p_nome,
p_cpf
);

end;

acima criamos uma procedure de nome add_cliente, que receberá os seguintes parametros p_nome, e p_cpf

bom criada a procedure, basta chama-la no visual basic no caso acima seria assim

cnn.Execute("CALL add_cliente('" & txtNome.Text &"','" & txtCPF.Text & ")

com o código acima o nome e o cpf digitados em txtnome e txtCPF seriam inseridos na tbl_clientes.

ou seja o código acima seria a mesma coisa que:

INSERT INTO tbl_clientes(p_nome, p_cpf) values ('marcelo','66666')

porém com uma vantagem a codigo fica a cargo do mysql o que aumenta o desempenho do código, imagine uma tabela com 60 campos por exemplo.

para consulta seria quase a mesma coisa veja

create procedure mostra_cliente()

Begin

select * from tbl_cliente;

end;

bom para chamar

cnn.Execute("CALL mostra_clientes()")

e pronto a query seria executa exibindo todos os clientes com um desempenho melhor que:

cnn.Execute("select * from tbl_clientes")

entendeu mais ou menos como fucniona, você terá de fazer uma pesquisa mais a fundo e verá que existem mil manerias de se usar stored procedures, boa sorte

espero que eu tenha te dado o caminho das águas.


   
dr.X
não registrado
ENUNCIADA !
Postada em 21/05/2012 23:35 hs   
Ok Treze !
Bem esclarecedor.
Obrigado.
   
J.Carlos
Pontos: 2843
PRESIDENTE PRUDENTE
SP - BRASIL
ENUNCIADA !
Postada em 22/05/2012 09:06 hs            
Com certeza absoluta o seu código ficará muito melhor em termos de tempo de resposta, principalmente se o seu bd estiver na net.
Eu tenho um sistema que usa um bd na net e trabalhava com ADO direto sem S.Procedure, depois que mudei pra SP, atualizações que aconteciam em 14 a 18 segundos, passaram a ser quase que instantâneas, parece quase atualização local.
   
Página(s): 1/1    


Seu Nome:

Seu eMail:

ALTERAR PARA MODO HTML
Mensagem:

[:)] = 
[:P] = 
[:(] = 
[;)] = 

HTML DESLIGADO

     
 VOLTAR

  



CyberWEB Network Ltda.    © Copyright 2000-2024   -   Todos os direitos reservados.
Powered by HostingZone - A melhor hospedagem para seu site
Topo da página