Auto Incremento - SQL SERVER - Tabela Existente
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
Curtidas 0
Respostas
Wilson Junior
05/05/2010
Poderia explicar melhor o seu problema?
GOSTEI 0
Marcio Santana
05/05/2010
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
GOSTEI 0
Wilson Junior
05/05/2010
Mas este campo CODIGO é uma FK em outra tabela?
GOSTEI 0
Marcio Santana
05/05/2010
nao é nao... um campo sem FK sem nada... so queria mesmo incluir ele numa nova tabela... com uma numeracao inicial diferente.... valeu
GOSTEI 0
Wilson Junior
05/05/2010
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.
Exemplo:
CREATE TABLE NOVA_TABELA
(
ID INTEGER,
Codigo int IDENTITY(100,1),
Nome VARCHAR(50),
)
Veja que "100" é o valor inicial.
Espero ter colaborado.
GOSTEI 0
Marcio Santana
05/05/2010
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
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
GOSTEI 0
Wilson Junior
05/05/2010
Veja os passos abaixo:
Espero ter colaborado.
/* 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.
GOSTEI 0
Marcio Santana
05/05/2010
Valeu deu certinho
GOSTEI 0