Auto Incremento - SQL SERVER - Tabela Existente

05/05/2010

0

Boa Tarde   Possuo uma tabela no banco de dados..... que tem o campo codigo...... uma sequencia de campos... exemplo.. campo: 1, 2, 3, 4, 5, etc   preciso inserir os mesmo registro com uma sequencia sde codigo diferente, exemplo:   como fazer isso?   Marcio  
Marcio Santana

Marcio Santana

Responder

Posts

05/05/2010

Wilson Junior

Poderia explicar melhor o seu problema?
Responder

05/05/2010

Marcio Santana

sim.... tenho uma tabela.... com tantos registros... e a numeracao do campo codigo esta assim.. 1 proximo codigo 2 3 4.... assim por diante,,..   estou importando essa tabela.... eu queria que na nova importacao... os codigos nao seguissem do numero 1 em diante,.. mais do 101..depois 102... entendeu?   valeu  
Responder

05/05/2010

Wilson Junior

Mas este campo CODIGO é uma FK em outra tabela?
Responder

05/05/2010

Marcio Santana

nao é nao... um campo sem FK sem nada... so queria mesmo incluir ele numa nova tabela... com uma numeracao inicial diferente.... valeu
Responder

06/05/2010

Wilson Junior

Crie um campo como IDENTITY (http://msdn.microsoft.com/en-us/library/aa933196%28SQL.80%29.aspx).

Exemplo:

CREATE TABLE NOVA_TABELA
(
ID INTEGER,
Codigo int IDENTITY(100,1),
Nome VARCHAR(50),
)
Veja que "100" é o valor inicial.

Espero ter colaborado.
Responder

06/05/2010

Marcio Santana

Entao.... eu ja tenho uma tabela, como o campo tal.....   dai queria jogar os dados dela numa tabela global....   depois apagar a tabela... origem... e voltar os dados da tabela global... com os mesmos dados, só que iniciando os codigos a partir do zero.... entendeu? Acho que agora consegui explicar o que realmente quero.      -- coloquei os dados na tabela local SELECT * INTO ##GLOBAL
FROM Tabela     -- apaguei ela drop table tabela   agora queria voltar os dados que estao na tabela global, só que iniciando do 100, depois 101, 202,, etc   entendeu? Obrigado
Responder

06/05/2010

Wilson Junior

Veja os passos abaixo:

/* Cria a tabela auxiliar */
CREATE TABLE TABELA_AUXILIAR
(
 Codigo  int IDENTITY(100,1), /* para iniciar com o valor 100*/
 Campo1  INTEGER,
 Campo2  INTEGER,
 Campo3  INTEGER,
 CampoX  INTEGER,
)

/* Inclui os dados da tabela principal na tabela auxiliar */
INSERT INTO TABELA_AUXILIAR
   (Campo1, Campo2, Campo3, CampoX)
SELECT Campo1, Campo2, Campo3, CampoX
FROM TABELA_PRINCIPAL

/* Apaga a tabela principal */
DROP TABLE TABELA_PRINCIPAL

/* Cria novamente a tabela principal - Não sei qual a estrutura da sua tabela, só estou dando um exemplo*/
CREATE TABLE TABELA_PRINCIPAL
(
 Codigo  int IDENTITY(1,1),
 Campo1  INTEGER,
 Campo2  INTEGER,
 Campo3  INTEGER,
 CampoX  INTEGER,
)

/* Inclui os dados da tabela auxiliar na tabela principal */
INSERT INTO TABELA_PRINCIPAL
SELECT * FROM TABELA_AUXILIAR

/* Apaga a tabela auxiliar */
DROP TABLE TABELA_AUXILIAR


Espero ter colaborado.
Responder

13/05/2010

Marcio Santana

Valeu deu certinho
Responder

Que tal ter acesso a um e-book gratuito que vai te ajudar muito nesse momento decisivo?

Ver ebook

Recomendado pra quem ainda não iniciou o estudos.

Eu quero
Ver ebook

Recomendado para quem está passando por dificuldades nessa etapa inicial

Eu quero

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar