MaximoAccess

Caro Usuário, antes de postar pela primeira vez, leia as regras do fórum.

Obrigado

Administração do MaximoAccess

Dicas Ms Access, Exemplos Ms Access, Codigos VBA Ms Access, SQL Ms Access

    [Resolvido]Reiniciar tabela usando sql

    iberlucio
    iberlucio
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 145
    Registrado : 15/12/2015

    [Resolvido]Reiniciar tabela usando sql Empty [Resolvido]Reiniciar tabela usando sql

    Mensagem  iberlucio em 17/2/2020, 21:07

    Ola povo,
    estou usando o seguinte comando para limpar minhas tabelas:

    CurrentDb.Execute "DELETE FROM Atendimento;"

    mas quero reiniciar o incremento automatico.

    Aguardo ajuda.
    bondan
    bondan
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 35
    Registrado : 30/12/2019

    [Resolvido]Reiniciar tabela usando sql Empty Re: [Resolvido]Reiniciar tabela usando sql

    Mensagem  bondan em 17/2/2020, 21:40

    Oi, tudo bem?

    Não sei fazer via código, mas a lógica talvez seja criar uma nova tabela temporária (temp) com os mesmos campos e depois copiar os dados da tabela antiga para a nova. Após copiado, apaga a antiga e renomeia a temporária para o mesmo nome.
    Podes copiar toda estrutura de campos para a temporária, menos a autonumeração que deve ser criada separada, para que seja recriada a autonumeração à partir da nova.

    Como não necessitei seguido deste recurso, fiz manualmente mesmo.
    Manualmente, após criar a temporária, copiei todas colunas (exceto autonumeração) e colei nas colunas da temporária.

    Se algum colega tem uma solução mais prática, amigável ou correta melhor.

    Abraço.
    iberlucio
    iberlucio
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 145
    Registrado : 15/12/2015

    [Resolvido]Reiniciar tabela usando sql Empty Re: [Resolvido]Reiniciar tabela usando sql

    Mensagem  iberlucio em 18/2/2020, 14:05

    Não tem como ser dessa forma, pois o procedimento será feito pelo usuário mensalmente, e será feita após clicar no botão "Limpar Tabelas".
    Marcelo David
    Marcelo David
    Moderador
    Moderador

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3080
    Registrado : 21/04/2011

    [Resolvido]Reiniciar tabela usando sql Empty Re: [Resolvido]Reiniciar tabela usando sql

    Mensagem  Marcelo David em 18/2/2020, 14:21

    Bom dia,
    o caminho é criar a tabela mesmo.
    Nesse caso, precisamos saber quais
    são os campos e o tipo de cada um deles.
    Saber com quais tabelas e campos se relacionam
    e fazer via código SQL executado a partir do clique
    de um botão.

    Mas será que não é o caso de criar um incremento próprio?
    Assim pode ser o número que quiser.


    .................................................................................
    Marcelo David
    www.mrdsystem.com.br (em construção)
    FranklinJSP
    FranklinJSP
    Avançado
    Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Anónimo
    Mensagens : 343
    Registrado : 25/02/2016

    [Resolvido]Reiniciar tabela usando sql Empty Re: [Resolvido]Reiniciar tabela usando sql

    Mensagem  FranklinJSP em 18/2/2020, 18:54

    Boa tarde!

    Espero que sirva de exemplo.

    Saludos
    Anexos
    [Resolvido]Reiniciar tabela usando sql AttachmentCompactar 2007 - FranklinJSP.zip
    Você não tem permissão para fazer download dos arquivos anexados.
    (212 Kb) Baixado 19 vez(es)


    .................................................................................
    Meu Português não é muito bom,
    mas eu gosto de colaborar... em qualquer idioma
    Smile "Access... minha paixão"
    DamascenoJr.
    DamascenoJr.
    Moderador
    Moderador

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1911
    Registrado : 22/11/2016

    [Resolvido]Reiniciar tabela usando sql Empty Re: [Resolvido]Reiniciar tabela usando sql

    Mensagem  DamascenoJr. em 18/2/2020, 20:46

    FranklinJSP, obrigado pelo exemplo. bounce
    Armazenarei em meu repositório pessoal.

    E contribuindo, há este artigo também
    usandoaccess.com.br/blog/zerar-campo-tipo-autonumeracao.asp?id=1


    .................................................................................
    Ajude-se a ser ajudado, anexe seu projeto.
    Sempre tente entender o código,
    não somente copie e cole.
    Positive as mensagens que achar útil clicando no '+' no canto superior direito delas.
    Alexandre Fim
    Alexandre Fim
    Developer
    Developer

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 940
    Registrado : 13/12/2016

    [Resolvido]Reiniciar tabela usando sql Empty Re: [Resolvido]Reiniciar tabela usando sql

    Mensagem  Alexandre Fim em 18/2/2020, 21:00

    Olá Iberlucio,

    Você pode executar a seguinte rotina:

    Código:


    Dim strSql As String
    Dim DB As DAO.Database

    Set DB = CurrentDb

    strSql = "DELETE FROM SuaTabela;"
    DB.Execute strSql

    strSql = "ALTER TABLE SuaTabela ALTER COLUMN CampoAutonumeracao COUNTER (1, 1);"
    DB.Execute strSql





    Espero ter ajudado.

    boa sorte


    .................................................................................
    "Aprender é a única coisa de que a mente nunca se cansa, nunca tem medo e nunca se arrepende." (Leonardo da Vinci)
    "O impossível existe até que alguém duvide dele e prove o contrário." (Albert Einstein)
    DamascenoJr.
    DamascenoJr.
    Moderador
    Moderador

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1911
    Registrado : 22/11/2016

    [Resolvido]Reiniciar tabela usando sql Empty Re: [Resolvido]Reiniciar tabela usando sql

    Mensagem  DamascenoJr. em 18/2/2020, 21:28

    Alexandre, COUNTER? Essa não conhecia. Muito simples. Obrigado por partilhar esta maneira.

    Acrescentando, o primeiro 1 significa de onde começar o incremento (pode ser em uma tabela já com dados também). O segundo 1 significa quantas unidades deverão ser incrementadas a cada novo registro (mas não funciona no access - pelo menos não funcionou no meu 2010)

    -------

    Editado:
    Testei no Access 365 e a quantidade de unidades a serem incrementadas pôde ser diferente de 1.


    .................................................................................
    Ajude-se a ser ajudado, anexe seu projeto.
    Sempre tente entender o código,
    não somente copie e cole.
    Positive as mensagens que achar útil clicando no '+' no canto superior direito delas.
    DamascenoJr.
    DamascenoJr.
    Moderador
    Moderador

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1911
    Registrado : 22/11/2016

    [Resolvido]Reiniciar tabela usando sql Empty Re: [Resolvido]Reiniciar tabela usando sql

    Mensagem  DamascenoJr. em 19/2/2020, 04:11

    Tópico movido.


    .................................................................................
    Ajude-se a ser ajudado, anexe seu projeto.
    Sempre tente entender o código,
    não somente copie e cole.
    Positive as mensagens que achar útil clicando no '+' no canto superior direito delas.
    Alexandre Fim
    Alexandre Fim
    Developer
    Developer

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 940
    Registrado : 13/12/2016

    [Resolvido]Reiniciar tabela usando sql Empty Re: [Resolvido]Reiniciar tabela usando sql

    Mensagem  Alexandre Fim em 19/2/2020, 13:00

    Olá DamasceJR,
    No Access, não é possível (pelo menos eu não conheço) o uso da instrução TRUNCATE.
    Eu rodei no meu Access 2010 e funcionou normalmente.

    Valeu


    .................................................................................
    "Aprender é a única coisa de que a mente nunca se cansa, nunca tem medo e nunca se arrepende." (Leonardo da Vinci)
    "O impossível existe até que alguém duvide dele e prove o contrário." (Albert Einstein)
    DamascenoJr.
    DamascenoJr.
    Moderador
    Moderador

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1911
    Registrado : 22/11/2016

    [Resolvido]Reiniciar tabela usando sql Empty Re: [Resolvido]Reiniciar tabela usando sql

    Mensagem  DamascenoJr. em 19/2/2020, 19:15

    Alexandre, aqui funcionou também. Só não funcionou no meu 2010 o segundo parâmetro quando tentei alterar o incremento para um valor diferente de 1.


    .................................................................................
    Ajude-se a ser ajudado, anexe seu projeto.
    Sempre tente entender o código,
    não somente copie e cole.
    Positive as mensagens que achar útil clicando no '+' no canto superior direito delas.
    iberlucio
    iberlucio
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 145
    Registrado : 15/12/2015

    [Resolvido]Reiniciar tabela usando sql Empty Re: [Resolvido]Reiniciar tabela usando sql

    Mensagem  iberlucio em 20/2/2020, 16:46

    Valeu povo...
    Trabalho em equipe, perfeito.
    Assis
    Assis
    Maximo VIP
    Maximo VIP

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 4167
    Registrado : 06/11/2009

    [Resolvido]Reiniciar tabela usando sql Empty Re: [Resolvido]Reiniciar tabela usando sql

    Mensagem  Assis em 19/5/2020, 09:16

    Bom dia

    Não funciona em tabelas ligadas .

    Como fazer ?


    [Resolvido]Reiniciar tabela usando sql Sem_t146


    .................................................................................
    *** Só sei que nada sei ***
    Assis
    Assis
    Maximo VIP
    Maximo VIP

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 4167
    Registrado : 06/11/2009

    [Resolvido]Reiniciar tabela usando sql Empty Re: [Resolvido]Reiniciar tabela usando sql

    Mensagem  Assis em 19/5/2020, 10:00

    A parte de eliminar funciona.

    A parte de reinicia a numeração dá erro na linha a vermelho.

    Me. Caminho é o caminho das tabelas no Back_End.

    Tab_Usuario é o nome da tabela


    strSql = "ALTER TABLE " & Me!Caminho & " Tab_Usuario ALTER COLUMN Codigo COUNTER (1, 1);"

    DB.Execute strSql






    Eliminar


    .................................................................................
    *** Só sei que nada sei ***
    Assis
    Assis
    Maximo VIP
    Maximo VIP

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 4167
    Registrado : 06/11/2009

    [Resolvido]Reiniciar tabela usando sql Empty Re: [Resolvido]Reiniciar tabela usando sql

    Mensagem  Assis em 20/5/2020, 16:55

    up


    .................................................................................
    *** Só sei que nada sei ***
    DamascenoJr.
    DamascenoJr.
    Moderador
    Moderador

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1911
    Registrado : 22/11/2016

    [Resolvido]Reiniciar tabela usando sql Empty Re: [Resolvido]Reiniciar tabela usando sql

    Mensagem  DamascenoJr. em 20/5/2020, 17:43

    strSql = "ALTER TABLE [" & Me!Caminho & "].Tab_Usuario ALTER COLUMN Codigo...

    fonte:
    usandoaccess.com.br/dicas/modificar-estrutura-tabelas-frontend-vba.asp#video


    .................................................................................
    Ajude-se a ser ajudado, anexe seu projeto.
    Sempre tente entender o código,
    não somente copie e cole.
    Positive as mensagens que achar útil clicando no '+' no canto superior direito delas.
    Assis
    Assis
    Maximo VIP
    Maximo VIP

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 4167
    Registrado : 06/11/2009

    [Resolvido]Reiniciar tabela usando sql Empty Re: [Resolvido]Reiniciar tabela usando sql

    Mensagem  Assis em 20/5/2020, 18:40

    Obrigado

    Damasceno.

    Fica aqui o código completo para BD dividida.

    Private Sub Comando112_Click()

    Dim strSql As String
    Dim DB As DAO.Database

    Set DB = CurrentDb

    strSql = "DELETE FROM Tab_Usuario;"
    DB.Execute strSql

    strSql = "ALTER TABLE [" & Me!Caminho & "].Tab_Usuario ALTER COLUMN Codigo COUNTER (1, 1);"

    DB.Execute strSql


    End Sub


    .................................................................................
    *** Só sei que nada sei ***

      Data/hora atual: 4/6/2020, 05:02