ďťż
 
MsSql - IDENTITY wlasciwosc kolumny ďťż
 
MsSql - IDENTITY wlasciwosc kolumny
Zobacz wiadomości
 
Cytat
A gdyby tak się wedrzeć na umysłów górę, / Gdyby stanąć na ludzkich myśli piramidzie, / I przebić czołem przesądów chmurę, / I być najwyższą myślą wcieloną. . . Juliusz Słowacki, Kordian
Indeks BCB i MySQL subiekt gt fototapeta
 
  Witamy

MsSql - IDENTITY wlasciwosc kolumny



g3 - 13-11-2006 00:45
MsSql - IDENTITY wlasciwosc kolumny
  Witam,

Czy ktos wie, jak z poziomu t-sql (nie Mangement Studio) usunac
wlasciwosc IDENTITY (autoikrementacja) kolumny?

Czyli jak zrobic cos takiego:

alter table <tabela> alter column <kolumna> <typ> NOIDENTITY ;-)

Pozdrawiam

Tomek

--
http://jaworski.aspweb.cz --> o mnie, i inne takie tam ....





Marcin A. Guzowski - 13-11-2006 00:46

  g3 napisał(a):
> Witam,
> Czy ktos wie, jak z poziomu t-sql (nie Mangement Studio) usunac
> wlasciwosc IDENTITY (autoikrementacja) kolumny?
> Czyli jak zrobic cos takiego:
> alter table <tabela> alter column <kolumna> <typ> NOIDENTITY ;-)

Niestety tak prosto się tego nie zrobi.
SSEM/SSMS robi to poprzez tworzenie nowej tabeli,
kopiowanie i dropa starej tabeli.

Z poziomu T-SQL można to trochę uprościć, ale tak czy inaczej
musisz wykonać szereg kroków:
- jeżeli kolumna, z której chcesz usunąć IDENTITY jest PK,
to trzeba DROP CONSTRAINT...
- dodanie nowej kolumny o typie zgodnym z kolumną IDENTITY,
która nie jest IDENTITY
- UPDATE tabela SET nowa_kolumna = stara_kolumna_z_IDENTITY
- usunięcie kolumny z IDENTITY
- zamiana nazwy utworzonej kolumny na nazwę usuniętej kolumny
(jest do tego procedura sp_rename)
- ew. stworzenie PK itd.

--
Pozdrawiam,
Marcin Guzowski
http://guzowski.info




g3 - 13-11-2006 00:46

  dokladnie, do takego rozwiazania włanie doszedłem.
Pozostaje jeszcze dodatkowo przywrocenie kolejnosci kolumn jesli bedzie
sie korzystac z kluzul typu insert into select *

Pozdrawiam

Tomek

--
http://jaworski.aspweb.cz --> o mnie, i inne takie tam ....

Marcin A. Guzowski napisał(a):
> g3 napisał(a):
> > Witam,
> > Czy ktos wie, jak z poziomu t-sql (nie Mangement Studio) usunac
> > wlasciwosc IDENTITY (autoikrementacja) kolumny?
> > Czyli jak zrobic cos takiego:
> > alter table <tabela> alter column <kolumna> <typ> NOIDENTITY ;-)
>
> Niestety tak prosto się tego nie zrobi.
> SSEM/SSMS robi to poprzez tworzenie nowej tabeli,
> kopiowanie i dropa starej tabeli.
>
> Z poziomu T-SQL można to trochę uprościć, ale tak czy inaczej
> musisz wykonać szereg kroków:
> - jeżeli kolumna, z której chcesz usunąć IDENTITY jest PK,
> to trzeba DROP CONSTRAINT...
> - dodanie nowej kolumny o typie zgodnym z kolumną IDENTITY,
> która nie jest IDENTITY
> - UPDATE tabela SET nowa_kolumna = stara_kolumna_z_IDENTITY
> - usunięcie kolumny z IDENTITY
> - zamiana nazwy utworzonej kolumny na nazwę usuniętej kolumny
> (jest do tego procedura sp_rename)
> - ew. stworzenie PK itd.
>
>
> --
> Pozdrawiam,
> Marcin Guzowski
> http://guzowski.info
  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • effulla.pev.pl
  • comp
    Zdalny =?ISO-8859-2?Q?dost=EAp_do_MSSQL_bez_zarz=B1dzani?==?ISO-8859-2?Q?a?= [MSSQL] =?ISO-8859-2?Q?zgodno=B6ci_z_licencjami_Microsoft_?==?ISO-8859-2?Q?SQL_Server?= [MSSQL 2k] - jak =?ISO-8859-2?Q?pod=B3=B1czy=E6_serwer_na_?==?ISO-8859-2?Q?porcie_innym_ni=BF_1433=3F?= MSSQL Express czy Oracle Express MSSQL 2005 i uruchamianie procedury o =?ISO-8859-2?Q?okre=B6lone?==?ISO-8859-2?Q?j_godzinie?= [MSSQL] ACCESS - SQL =?ISO-8859-2?Q?B=B3ad_w_konwersji_lic?==?ISO-8859-2?Q?zb?= [MSSQL 2000] =?ISO-8859-2?Q?wywo=B3anie_procesu_z_poziomu_?==?ISO-8859-2?Q?job=27a?= [MSSQL 2K] =?ISO-8859-2?Q?Wp=B3yw_ustawie=F1_regionalnych_?==?ISO-8859-2?Q?serwera_na_zapytania?= Pobierananie danych z innej bazy danych w MSSQL Migracja MSSQL 2005 CTP na 2005 Express
  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • lisinski.htw.pl
  • Cytat

    Decede mihi sole - nie zasłaniaj mi słonca.
    Gdy kogoś kochasz, jesteś jak stworzyciel świata - na cokolwiek spojrzysz, nabiera to kształtu, wypełnia się barwą, światłem. Powietrze przytula się do ciebie, choćby był mróz, a ty masz w sobie tyle radości, że musisz ją rozdawać wokoło, bo się w tobie nie mieści
    Hoc fac - tak czyń.
    A tergo - od tyłu; z tyłu.
    I czarne włosy posiwieją. Safona

    Valid HTML 4.01 Transitional

    Free website template provided by freeweblooks.com