Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Ingrid

Salvar no banco de dados

Recommended Posts

Olá pessoal, se alguem puder me ajudar, agradeço.

Estou trabalhando com vb6 e banco Access, e estou mandando consulta sql pro banco de dados, entao qdo mando um campo ele vai certinho, porem qdo vou mandar o outro campo ele comeca daonde o outro acabou...e gostaria q ambos comecassem da primeira linha, até onde ele for...naum sei se vcs entenderam, mas vou madar meu codigo, se alguem souber, agradeço...

 

For i = 1 To 12

consulta = "SELECT AVG(PR) as Media FROM Resultados WHERE Month(Resultados.Data)=" & i & " "

Set rs = Dbcon.OpenRecordset(consulta)

 

RegEstatistica.AddNew

RegEstatistica("Media") = rs("Media")

RegEstatistica.Update

next

//faco isso numa funcao pra jogar no banco...

 

RegEstatistica.MoveFirst

For i = 1 To Linhas

consulta = "SELECT (1-(PR/PP))*100 AS Quebra FROM Resultados WHERE Resultados.Referencia=" & i & " "

Set rs = Dbcon.OpenRecordset(consulta)

RegEstatistica.AddNew

RegEstatistica("Quebra") = rs("Quebra")

RegEstatistica.Update

//depois em outra funcao faco isso, mas os valores sao colocados depois das 12 linhas q foram inseridos os de cima...

 

 

Obrigada.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Você poderia ser mais específica?

 

Você está adiciónando registros à tabela, mas quer que eles sejam adicionados à partir do início da tabela e não do fim, é isso mesmo?

Se for, não creio que isto seja possível não.

Se mover no BD só é possível no caso de consultas, creio eu.

Mas seja mais específica e quem sabe possamos ajudar?

 

Té mais.

Compartilhar este post


Link para o post
Compartilhar em outros sites

É Ingrid, eu também não entendi sua necessidade, e também não entendi seu codigo.

 

For i = 1 To 12

consulta = "SELECT AVG(PR) as Media FROM Resultados WHERE Month(Resultados.Data)=" & i & " "

Set rs = Dbcon.OpenRecordset(consulta)

 

RegEstatistica.AddNew

RegEstatistica("Media") = rs("Media")

RegEstatistica.Update

next

 

você abre seu rs e depois quer passar o valor da coluna media para a coluna media do RegEstatistica.

 

Só nesse código acima vai criar 12 linhas já de cara, estou certo?

 

Depois você pos esse código abaixo, que vai criar mais 12 linhas:

 

 

RegEstatistica.MoveFirst

For i = 1 To Linhas

consulta = "SELECT (1-(PR/PP))*100 AS Quebra FROM Resultados WHERE Resultados.Referencia=" & i & " "

Set rs = Dbcon.OpenRecordset(consulta)

RegEstatistica.AddNew

RegEstatistica("Quebra") = rs("Quebra")

RegEstatistica.Update

 

Se entendi, não era para esse "Quebra" aparecer em uma nova linha, o que você queria era que adicionasse esse valor nas linhas criadas anteriormente, correto? Se for isso, o que está errado é esse RegEstatistica.AddNew, pois isso vai criar uma nova linha, sem dúvidas.

 

você está se conectando com DAO, então não sei te ajudar muito, mas o seguinte, tente explicar o que você precisa fazer exatamente passo a passo e o que faz cada tabela, talvez consiga uma forma mais limpa de fazer isso.

 

Fique com Deus.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Então Claudio, eh exatamente isto que eu quero q faça...eu tentei tirar o add new, mas deu um erro..

O q acontece eh q adicionoum campo e qdo vou adicionar o outro, ele naum comeca do inicio da tabela, e sim da onde o outro campo parou...tipo termina um campo comeca o outro na proxima linha...como faço?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Sendo conexão através de ADO, existe a propriedade movefirst, que faz com que vá para a primeira entrada da tabela, ou ainda o find que você pode mover para a posição que quiser.

 

Agora, não sei te dizer se essas propriedades também existem para conexão via DAO, pois como te disse não sei programar via DAO.

 

Assim, vamos supor que você tem uma tabela com as colunas nome, mes_de_nascimento, idade e carro:

Ai você adiciona em sua tabela valores para as colunas nome, mes e idade, conforme abaixo:

 

Nome Mes Idade carro

Joao jan 19

Andre fev 20

Rita dez 21

Marcia ago 29

 

Depois você quer adicionar os carro. Caso você vá adicionar exatamente da primeira para a ultima, utilizando o movefirst te resolve, senão você pode usar o find, assim:

 

rs.find "nome = 'Joao'", start:=1

rs("carro") = "gol"

rs.update

 

E assim sucessivamente, porém com te disse, não sei se essa propriedade funciona para DAO.

 

Mas de qualquer forma, boa sorte, espero que tenha ajudado.

 

Abraços.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.