Deividy Postado Janeiro 6, 2005 Denunciar Share Postado Janeiro 6, 2005 algum tempo atraz foi abordado um assunto de reordenar o campo de um banco de dados com campos automaticos, acho que é issoo que ue quero saber é quase issobreve explicão, tenho um form para documento 1 só que pode ser que surja documento 2 documento 3 eassim por diantemais ai quero apagar o doc 1 e automaticamente renumerar o 2 passa a ser 1 o 3 passa a ser o 2alguém pode me ajudar ? Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 dark0 Postado Janeiro 6, 2005 Denunciar Share Postado Janeiro 6, 2005 Brother, estamos falando de FSO?Documentos = arquivos salvos em alguma pasta no servidor? Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Deividy Postado Janeiro 6, 2005 Autor Denunciar Share Postado Janeiro 6, 2005 não eu estou deletando um campo no banco de dado e quero reordenar os que ficam Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 dark0 Postado Janeiro 6, 2005 Denunciar Share Postado Janeiro 6, 2005 Hum..você quer renomear os dados que sobraram lá? Ou os campos da estrutura da tabela do banco? Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 ursolouco Postado Janeiro 6, 2005 Denunciar Share Postado Janeiro 6, 2005 Brother!!O [ GUTO ] fez um sistema destes... tinha até um link...Mas não estou encontrando Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Deividy Postado Janeiro 6, 2005 Autor Denunciar Share Postado Janeiro 6, 2005 acredito que estamos falando de estruturaporque os numero que quero alterar não são o id que é auto numerico e sim um numero sequencial que faz parte co cadastro para cada pessoatipo eu tenho 4 documento cadastrado id = 1 cont = 1 identificação = 30id = 10 cont = 2 identificação = 30id = 40 cont = 3 identificação = 30identificação seria o meu numero de registroid é o automatico gerado para essa tabela que é usado para outras coisascont é o campo onde quero alterarse apagar o 1 eu queria colocar o 2 como um em cont Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 dark0 Postado Janeiro 6, 2005 Denunciar Share Postado Janeiro 6, 2005 Se não me engano, a gente fez ele no 2º Desafio do Forum.. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Deividy Postado Janeiro 6, 2005 Autor Denunciar Share Postado Janeiro 6, 2005 é esse mesmo que queria olhar para saber se resolve meu problemamais tambem não encontrei Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 dark0 Postado Janeiro 6, 2005 Denunciar Share Postado Janeiro 6, 2005 seria isso?http://scriptbrasil.com.br/forum/index.php?showtopic=23983 Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Deividy Postado Janeiro 6, 2005 Autor Denunciar Share Postado Janeiro 6, 2005 o tópico acho que pode ser esse vou dar uma olhada qualquer coisa eu volto a consultar vocêsvaleu pela força pessoal Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Deividy Postado Janeiro 6, 2005 Autor Denunciar Share Postado Janeiro 6, 2005 eu peguei sua função que o dark posto lá assim nem sei se é a mais facileu nunca trabalhai com os camo dessa maneiraFunction FProximo_registro(campo,tabela)sql = "select * from "&tabela&" order by "&campo&""preciso de um helpeu não seu alguém pode me explicar como seria essa variavel de tabela, eel esta pegando esse campo de onde? Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 dark0 Postado Janeiro 6, 2005 Denunciar Share Postado Janeiro 6, 2005 Olá deividy.Olha só..Neste desafio, eu montei aquela função, só pra ver mesmo heheSe fosse montar, acho que já usaria outros modos, em que eu peguei mais pratica.A função:<%Function FProximo_registro(tabela,campo)'Seleciona os dados da tabela, que é enviada como parametro ao chamar a funcao, e ordena pelo camposql = "select * from "&tabela&" order by "&campo&""set rs = conexao.execute(sql)'testa se a tabela ta vazia, e se tiver, o proximo registro será o primeiro, senao, é feito um loop, pra descobrir qual será o proximo registro.if rs.eof = true thenFProximo_registro = 1elsei = 1rs.MoveFirstdo while not rs.eof if i <> rs("codigo") then FProximo_registro = i else i = i + 1 FProximo_registro = i end ifrs.MoveNextlooprs.MoveFirstend ifEnd Function'Response.Write FProximo_registro("nomeTabela","nomeCampo")%>No Response.write, seria um modo simples, de chamar a função, e mostrar o próximo registro na tela.Para você usar a função, você precisa só chamar ela, assim:<%variavel_que_guardará_o_valor = FProximo_registro("nome_da_sua_tabela",nome_do_campo_que_quer_ordenar")%>Tendeu? Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Deividy Postado Janeiro 6, 2005 Autor Denunciar Share Postado Janeiro 6, 2005 legal entendi estou lendo o tópico que inicio o desafio é bem interesantemais ai surgiu um problema não é isso que quero, não quero saber o registro que esta faltando e sim quero reordenar os camposeu sei que ele não terão mais que 10 por iso quero reordenar os campo1234se apagar o 2134ai reordenar123entendeu parece mais facil que isso só não entedi como aindase puder me ajudar Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 dark0 Postado Janeiro 6, 2005 Denunciar Share Postado Janeiro 6, 2005 Hum..isso deve dar um pouco de trabalho, mas vamos ver..você usa aquela funcao, e descobre qual esta faltando.então, você pega todos os registros que vem depois daquele lá, e diminui 1.Assim, você vai refazer..Isso foi um 'chute' só..Pois, enquanto escrevia aqui, isso veio na minha cabeça.Acho que não deixa de ser uma solução.. Mas não sei se faria exatamente o que você quer.Veja se serve, e tente bolar o codigo.Caso não consiga, poste aí, que eu vejo se consigo fazer algo. É que to de saída agora.. heheAbraços Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Deividy Postado Janeiro 6, 2005 Autor Denunciar Share Postado Janeiro 6, 2005 não rola !estou tendo umas idéia aqui mais o código esta mutui ruim bom se der certo eu posto aquise mais alguém puder me ajudar Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 dark0 Postado Janeiro 6, 2005 Denunciar Share Postado Janeiro 6, 2005 não rola ! porque não? Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Deividy Postado Janeiro 6, 2005 Autor Denunciar Share Postado Janeiro 6, 2005 eu naõ consegui entender o código ainda muito bem!não sei onde pocissionar algumas coisa nele vou estudar masi a respeito para ver o que eu poderia esta fazendo Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 felipefrancesco Postado Janeiro 7, 2005 Denunciar Share Postado Janeiro 7, 2005 Se eu entendi direito, você pode fazer isso só com SQL mesmo...Primeiro você excluiria o arquivo assim:DELETE FROM Tabela WHERE doc=5 Depois dá um Update: UPDATE Tabela SET doc=doc-1 WHERE doc > 5Vê se isso te ajuda. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 [ GuTo ] Postado Janeiro 7, 2005 Denunciar Share Postado Janeiro 7, 2005 Brother!Procure nos tópicos criados por mim.O 2ºdesafio e um tópico onde foi debatido isso.o tópico se chama: cadastro de membros.Q hj em dia eu teria colocado um nome bem melhor... Se você der uma boa olhada nas discussões destes tópicos, você entenderá como funciona.Caso desista, e role um dim dim , eu faço a função pra você Caso contrário, a gente dá uma mãozinha aki.Abraços! Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Deividy Postado Janeiro 7, 2005 Autor Denunciar Share Postado Janeiro 7, 2005 bom negativo ao lance de desisti! eu tambem sobrevivo com isso!vou fazer essa para sim só não achei o geito ainda mais estou caminhandoagora se você der dicas de como fazer já seria de grande ajuda! Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 [ GuTo ] Postado Janeiro 7, 2005 Denunciar Share Postado Janeiro 7, 2005 Aí, a lógica toda, sem misteríos!Só pensar.Você tem uma tabela com a sequencia de valores, assim:1,2,3,4,5,6,7,8,9você exclui o 7. Opções:- Dae já vai querer reordenar logo após ter excluído o registro?- Prefere que quando um novo registro for adicionado ele preecher o buraco, no caso, o 7 q foi por último excluído? Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Deividy Postado Janeiro 7, 2005 Autor Denunciar Share Postado Janeiro 7, 2005 no meu caso isso não adinataria!porque é assimtenho 3 cadastro com o nome de documento que estão vinculado com uma pessoapessoa 1doc 1 | doc 2 | doc 3 esse doc ele são links para uma página para que a pessoal e outros usuarios tenha acesso a esse docsó que eu sempre estou dizendo na página que recebe que ele é o doc 1 não posso alterar isso! por outros motivos!então há idéia é sempre que deletar reordenar!e tambem esteticamente fica melhorex. se eu apagar doc 2ficadoc 1 | doc 3esteticamente não é legalagora se eu apagar o doc 1 eu não consigo chamar o 2 porque esta configurado para sempre chamar o 1 não sei se deu para entenderpor isso o meu problema se resolveria com uma reorganização desse campo Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 [ GuTo ] Postado Janeiro 8, 2005 Denunciar Share Postado Janeiro 8, 2005 Bem, podemos começar por partes, no final a gente pode ver se dá pra otimizar o código.Vamos a lógica! - Pegue a estrutura como está em ordem crescente- Crie um contador dentro de um loop- Vá atualizando cada registro com o valor do loop.Ex.: '//Pode colocar um WHERE <condicao>, se necessário na t-sql Dim sql, rs, x sql = "SELECT doc FROM tabela ORDER BY doc ASC" Set rs = Server.CreateObject("ADODB.Recordset") rs.open sql,con,2,3 If NOT rs.eof Then While NOT rs.eof x = x + 1 rs("doc") = x rs.Update rs.movenext Wend end if rs.Close : set rs = nothing Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
Deividy
algum tempo atraz foi abordado um assunto de reordenar o campo de um banco de dados com campos automaticos, acho que é isso
o que ue quero saber é quase isso
breve explicão, tenho um form para documento 1 só que pode ser que surja documento 2 documento 3 eassim por diante
mais ai quero apagar o doc 1
e automaticamente renumerar o 2 passa a ser 1
o 3 passa a ser o 2
alguém pode me ajudar ?
Link para o comentário
Compartilhar em outros sites
22 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.