Novo

Forum kao aplikacija na telefonu

Dodajte forum na početni ekran i koristite ga kao aplikaciju, sa menijem na dnu ekrana.

  • 9 odgovora
  • 4.313 pregleda

Najnovija ↓

Kako dodati kolonu preko DDL-a (MSSQL 2005) 26.03.2008. u 02:49 · pre 226 meseci #1
Pozdrav,

kako da preko DDL-a dodam kolonu, a da pri tome navedem ispred koje kolone treba da stoji ? Znaci isto ono sto bi iz managera uradio sa insert iz kontekst menija kako bih dodao kolonu pre neke druge.

Hvala.
Re: Kako dodati kolonu preko DDL-a (MSSQL 2005) 26.03.2008. u 09:43 · pre 226 meseci #2
nema elegantog rjesenja, bar mi nije poznato. Ako si vidio sta on radi u tom slucaju - napravi tmp_tabela, pa prespe sve podatke iz A->B, obrise kljuceve, drop A, rename B, kreira kljuceve, sve naravno pod transakcijom.... i to zna da traje i traje, tako da ako ti nije bitno koji je redosled, uradis jednostavnno alter table A add kolona....
Re: Kako dodati kolonu preko DDL-a (MSSQL 2005) 26.03.2008. u 14:30 · pre 226 meseci #3
Tja, bitno mi je :) Uradio sam tako da napravim privremenu tabelu u kojoj smestim unique kolonu iz originalne tabele, i sve kolone koje trebaju da budu posle dodate, prebacim podatke iz tih kolona u privremenu tabelu, zatim obrisem te kolone iz originalne tabele, dodam novu kolonu i posle nje te obrisane kolone, a zatim vratim podatke. Tako zadrzim current identity tabele, sto bih izgubio ako bih obrisao tabelu.

Mislim, nije ovo problem da se uradi, ali sam pomislio da je logicno da vec postoji neka stored procedura ili funkcija koja to radi, ako se to vec moze uraditi iz managera.

Hvala u svakom slucaju :(
Re: Kako dodati kolonu preko DDL-a (MSSQL 2005) 27.03.2008. u 09:04 · pre 226 meseci #6
da, information_schema jeste view, a mogao si i ti da naprvis view sa odgovarajucim redosledom pa da koristis samo njega, a ne tabelu. Pa cak i da preimenujes i tabelu i view pa ti se view zove kao sto se zvala tabela i sve ti (skoro) isto....
Re: Kako dodati kolonu preko DDL-a (MSSQL 2005) 27.03.2008. u 14:40 · pre 226 meseci #7
Hocu da baza ima profi izgled u samom korenu :) Neozbiljno mi izgleda View-a koji mapira kolone 1-1 i samo menja redosled.

Napravio sam skirptu koja radi takav insert kolone, navedu se parametri ispred koje kolone se treba ubaciti, i nazalost samo ime i tip polja koje se dodaje, tako da je vrlo rudimentarna. Meni je prosto ne shatljivo da tako nesto vec ne postoji.
Re: Kako dodati kolonu preko DDL-a (MSSQL 2005) 31.03.2008. u 15:43 · pre 226 meseci #8
Teorijski, redosled kolona u tabeli nije bitan. Ako hoces da korisnik vidi kolone u nekom zadtom redosledu, koristi SELECT :-)
Re: Kako dodati kolonu preko DDL-a (MSSQL 2005) 31.03.2008. u 16:12 · pre 226 meseci #9
Korisnik sastav tabele nece zapravo nikada ni videti, jer je prikazujem iz aplikacije gde mapiram redolsed kolona kako meni odgovara. Medjutim, jadniku koji ce posle mene morati da odrzava tu bazu je vrlo bitan raspored, da bude nekih logickih celina kako bi mogao da se snadje u necemu sto nije on sam pravio.

Zamsli samo da si na primer naknadno ubacio spoljni kljuc na novododatu tabelu ili indeks i da je ta kolona na 25-toj poziciji ?! Pa meni samom bi bilo nezgodno da pohvatam sta sam radio pre recimo tri meseca :) Frik sam, ne volim kada su mi kolone rastrkane na sve strane, volim uredno ;)
Prijavite se da biste odgovorili u ovoj temi.PrijavaRegistracija

Premeštanje teme