MaximoAccess

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

https://www.maximoaccess.com/t48-regras-do-forum

Obrigado

Administração


Participe do fórum, é rápido e fácil

MaximoAccess

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

https://www.maximoaccess.com/t48-regras-do-forum

Obrigado

Administração

MaximoAccess

Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.

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 : Respeito às Regras 100%

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

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

    Mensagem  iberlucio 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 : 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 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 : Respeito às Regras 100%

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

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

    Mensagem  iberlucio 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 : Respeito às Regras 100%

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

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

    Mensagem  Marcelo David 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 | [Resolvido]Reiniciar tabela usando sql LinkedIn_Icon.jpg.original LinkedIn
    https://www.freetool.dev
    FranklinJSP
    FranklinJSP
    Avançado
    Avançado

    Respeito às regras : Respeito às Regras 100%

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

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

    Mensagem  FranklinJSP 18/2/2020, 18:54

    Boa tarde!

    Espero que sirva de exemplo.

    Saludos


    .................................................................................
    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 : Respeito às Regras 100%

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

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

    Mensagem  DamascenoJr. 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 : Respeito às Regras 100%

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

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

    Mensagem  Alexandre Fim 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


    .................................................................................
    - Procure sempre anexar seu projeto para análise do problema/dúvida.
    - Ao copiar/colar um código VBA, procure entender seu funcionamento.
    - Se o problema foi resolvido, não se esqueça de marcar o tópico como RESOLVIDO.
    DamascenoJr.
    DamascenoJr.
    Moderador
    Moderador

    Respeito às regras : Respeito às Regras 100%

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

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

    Mensagem  DamascenoJr. 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 : Respeito às Regras 100%

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

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

    Mensagem  DamascenoJr. 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 : Respeito às Regras 100%

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

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

    Mensagem  Alexandre Fim 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


    .................................................................................
    - Procure sempre anexar seu projeto para análise do problema/dúvida.
    - Ao copiar/colar um código VBA, procure entender seu funcionamento.
    - Se o problema foi resolvido, não se esqueça de marcar o tópico como RESOLVIDO.
    DamascenoJr.
    DamascenoJr.
    Moderador
    Moderador

    Respeito às regras : Respeito às Regras 100%

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

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

    Mensagem  DamascenoJr. 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 : Respeito às Regras 100%

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

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

    Mensagem  iberlucio 20/2/2020, 16:46

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

    Respeito às regras : Respeito às Regras 100%

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

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

    Mensagem  Assis 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 : Respeito às Regras 100%

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

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

    Mensagem  Assis 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 : Respeito às Regras 100%

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

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

    Mensagem  Assis 20/5/2020, 16:55

    up


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

    Respeito às regras : Respeito às Regras 100%

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

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

    Mensagem  DamascenoJr. 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 : Respeito às Regras 100%

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

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

    Mensagem  Assis 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: 21/6/2021, 01:12