fer_aline 0 Denunciar post Postado Novembro 1, 2005 Olá http://forum.imasters.com.br/public/style_emoticons/default/cry.gif Estou precisando de uma ajudinha!! Por favor http://forum.imasters.com.br/public/style_emoticons/default/blush.gif eu preciso fazer consulta de duas tabelas independentes. As duas tem um campo data que vai ser pelo qual eu vou procurar. por exemplo SELECT * FROM contas WHERE data_nota BETWEEN 'data_inicio' AND 'data_final' SELECT * FROM despesas WHERE data_nota BETWEEN 'data_inicio' AND 'data_final' queria guardar o valor dos dois SELECTS em uma tabela temporária para depois fazer um SELECT nessa tabela para poder ordenar o valor das consultas por data e mostrá-la por exemplo: para contas achou Conta 1 data 31/10 Conta 2 data 1/11 conta 3 data 3/11 para despesas despesa 1 data 30/10 despesa 2 data 31/10 despesa 3 data 1/11 despesa 4 data 2/11 e mostra assim: despesa 1 data 30/10 Conta 1 data 31/10 despesa 2 data 31/10 despesa 3 data 1/11 Conta 2 data 1/11 despesa 4 data 2/11 conta 3 data 3/11 Tem alguma maneira de criar uma tabela temporaria no servidor?? Dai cada usuário que fizer uma consulta é criada uma tabela temporária e depois essa tabela é apagada?? Obrigada http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif Compartilhar este post Link para o post Compartilhar em outros sites
Rpizao 0 Denunciar post Postado Novembro 2, 2005 Falai menina... seguinte, sempre que preciso fazer alguma coisa desse tipo uso CURSOR. Mas se quiser fazer por temporária, vai um exemplo. create table temp type=heapSELECT * FROM contas WHERE data_nota BETWEEN 'data_inicio' AND 'data_final' Qualquer coisa é só falar... :D Até mas... http://forum.imasters.com.br/public/style_emoticons/default/bye1.gif Rafael. Compartilhar este post Link para o post Compartilhar em outros sites
fer_aline 0 Denunciar post Postado Novembro 3, 2005 obrigadinha!! :) Só mais uma coisa: no final eu deleto ela ou ela se "apaga" sozinha?? O.ovaleuu http://forum.imasters.com.br/public/style_emoticons/default/joia.gif Falai menina...seguinte, sempre que preciso fazer alguma coisa desse tipo uso CURSOR.Mas se quiser fazer por temporária, vai um exemplo. create table temp type=heapSELECT * FROM contas WHERE data_nota BETWEEN 'data_inicio' AND 'data_final'Qualquer coisa é só falar... :D Até mas... http://forum.imasters.com.br/public/style_emoticons/default/bye1.gif Rafael. Compartilhar este post Link para o post Compartilhar em outros sites
NaPraia 12 Denunciar post Postado Novembro 3, 2005 Precisa apagar.drop table temp Compartilhar este post Link para o post Compartilhar em outros sites
fer_aline 0 Denunciar post Postado Novembro 3, 2005 Okk http://forum.imasters.com.br/public/style_emoticons/default/joia.gif obrigada!! mais assim se a aplicação terminar de forma inesperada como apago essa tabela?? ou ela não permanece?? Ah e para travar uma tabela supondo que duas pessoas estao tentando criar a tabela temp tem como? eu tentei assim e não deu LOCK TABLES temp WRITE; ;) Compartilhar este post Link para o post Compartilhar em outros sites
Rpizao 0 Denunciar post Postado Novembro 4, 2005 Pode sim Aline... CREATE TABLE temp ( campo 1, campo 2... ) TYPE=HEAP;LOCK TABLE TempTable WRITE; Pra liberar... UNLOCK TABLE temp; Com relação a tabela, a temporária é tratada diferente no MySQL (acho que tem um monte de coisa fora do padrão ANSI, isso me atrapalha muito... :huh: ), nesse caso a tabela é criada em memória e só será "deletada" por você ou quando reiniciar ou desligar o computador. Caso for por um erro, você tem q captura-lo quando acontecer e apartir dai dropar a tabela... Qualquer coisa é só falar que o pessoal te ajuda... Abraços... http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif Rafael. Ou faz melhor... Toda vez que seu sistema iniciar de uma busca por essa tabela, se ela existir drope-a (bela palavra...rs) Isso vai garantir que a tabela não persista quando houver o próximo login no sistema. Compartilhar este post Link para o post Compartilhar em outros sites
fer_aline 0 Denunciar post Postado Novembro 7, 2005 Acabei resolvendo esse problema colocando uma verificação.. eu crio a tabela com o nome do usuario.. se existir eu dou um dorp e crio a nova. Mas outra dúvida surgiu... essa tabela é de uma intranet .. que fica num servidor Linux, eu teria que dar a todos os usuarios permissao para criar e deletar tabela.. :( Tem como ao invés disso eu criar essa tabela na memoria da maquina.. ??? http://forum.imasters.com.br/public/style_emoticons/default/joia.gif de novo! Compartilhar este post Link para o post Compartilhar em outros sites
NaPraia 12 Denunciar post Postado Novembro 7, 2005 Como assim dar permissão para todos criarem tabelas!não é só você que cria??Não fica melhor você ter uma tabela real ao invés de ficar sempre criando tabelas temporárias.Mas que eu saiba, não precisa de 'autorização' especial.Mesmo só tendo a permissão de consulta, você poder criar tabelas temporárias, só não tem como alterar,criar ou apagar dados das tabelas normais. Compartilhar este post Link para o post Compartilhar em outros sites