Forum Sveta kompjutera

Nazad   Forum Sveta kompjutera > Test Run > Programiranje

Programiranje Programski jezici, tehnike, alatke...

Odgovor
 
Alatke vezane za temu Vrste prikaza
Stara 11.6.2010, 9:20   #1
catwoman
Član
 
Član od: 28.10.2008.
Poruke: 42
Zahvalnice: 4
Zahvaljeno 0 puta na 0 poruka
Question SQL - Sistemski podaci o tabelama

PLEASE HELP,u narednom kveriju SAM DOBILA SISTEMSKE PODATKE O TABELI,KAO STO JE NAZIV TABELE ,NAZIV POLJA,I OPIS POLJA:


SELECT TOP 100 PERCENT i_s.TABLE_NAME AS ImeTabele, i_s.COLUMN_NAME AS ImeKolone, s.[value] AS Opis, i_s.DATA_TYPE AS TipPodatka, i_s.*,
s.*
FROM INFORMATION_SCHEMA.COLUMNS i_s LEFT OUTER JOIN
dbo.sysproperties s ON s.id = OBJECT_ID(i_s.TABLE_SCHEMA + '.' + i_s.TABLE_NAME) AND s.smallid = i_s.ORDINAL_POSITION AND
s.name = 'MS_Description'
WHERE (OBJECTPROPERTY(OBJECT_ID(i_s.TABLE_SCHEMA + '.' + i_s.TABLE_NAME), 'IsMsShipped') = 0)
ORDER BY i_s.TABLE_NAME, i_s.ORDINAL_POSITION


Da li mozda neko ima ideju na koji nacin da dobijem podatke o duzini nekog polja koje je programer u bazi pri kreiranju tabele,definisao,taj podatak mi je jako bitan za kreiranje izvestaja,neke vrste dokumenata o tabelama.PLEASE HELP
catwoman je offline   Odgovor sa citatom ove poruke
Stara 11.6.2010, 11:40   #2
Todors
Član
 
Član od: 16.4.2010.
Lokacija: Pančevo
Poruke: 462
Zahvalnice: 41
Zahvaljeno 68 puta na 63 poruka
Određen forumom Re: SQL - Sistemski podaci o tabelama

Stavi, da ti prvo polje bude filovano karakterima, pa count-uj taj char ili još bolje svi u prvo polje broj dužine polja, ili kreiraj tabelu koja će imati samo brojeve dužina tabela

Poslednja ispravka: Todors (11.6.2010 u 12:06)
Todors je offline   Odgovor sa citatom ove poruke
Stara 11.6.2010, 13:10   #3
catwoman
Član
 
Član od: 28.10.2008.
Poruke: 42
Zahvalnice: 4
Zahvaljeno 0 puta na 0 poruka
Određen forumom Re: SQL - Sistemski podaci o tabelama

Pa tako nesto slicno sam probala,ali mi je problem kako da ocitam iz sistema duzinu polja,recimo kada se u dizajnu kreira tabela,navede se ime polja ,tip podatka,duzina polja...e odakle da ocitam tu duzinu polja?Unapred hvala
catwoman je offline   Odgovor sa citatom ove poruke
Stara 11.6.2010, 13:10   #4
irreal
V.I.P. Programiranje
 
Član od: 9.1.2009.
Lokacija: Beograd, Banovo Brdo
Poruke: 1.157
Zahvalnice: 83
Zahvaljeno 448 puta na 303 poruka
Određen forumom Re: SQL - Sistemski podaci o tabelama

Citat:
Todors kaže: Pregled poruke
Stavi, da ti prvo polje bude filovano karakterima, pa count-uj taj char ili još bolje svi u prvo polje broj dužine polja, ili kreiraj tabelu koja će imati samo brojeve dužina tabela
NE, NE, NE i OH GOD NE !

omg, toliko je losa praksa sve to sto si naveo, NIKAKO to ne raditi.

pravilan nacin je da izvuces iz tabela koje opisuju sve tabele i polja.

u svakoj bazi je drugacije, znam da je u MS SQL Serveru (ali 2008, ne znam za 2000, al sigurno je bar slicno, ako ne isto)

Select CHARACTER_MAXIMUM_LENGTH from <imeGlavneSeme>.INFORMATION_SCHEMA.COLUMNS where TABLE_NAME = 'ime_tabele' and COLUMN_NAME = 'ime_kolone'

mozes i umesto select CHARACTER_MAXIMUM_LENGTH da stavis select *, pa vidi sta sve ima od informacija o svakom polju, mozda ti je jos nesto koristan podatak
irreal je offline   Odgovor sa citatom ove poruke
Sledeći korisnik se zahvaljuje korisniku irreal na korisnoj poruci:
catwoman (11.6.2010)
Stara 11.6.2010, 13:31   #5
catwoman
Član
 
Član od: 28.10.2008.
Poruke: 42
Zahvalnice: 4
Zahvaljeno 0 puta na 0 poruka
Određen forumom Re: SQL - Sistemski podaci o tabelama

Citat:
irreal kaže: Pregled poruke
NE, NE, NE i OH GOD NE !

omg, toliko je losa praksa sve to sto si naveo, NIKAKO to ne raditi.

pravilan nacin je da izvuces iz tabela koje opisuju sve tabele i polja.

u svakoj bazi je drugacije, znam da je u MS SQL Serveru (ali 2008, ne znam za 2000, al sigurno je bar slicno, ako ne isto)

Select CHARACTER_MAXIMUM_LENGTH from <imeGlavneSeme>.INFORMATION_SCHEMA.COLUMNS where TABLE_NAME = 'ime_tabele' and COLUMN_NAME = 'ime_kolone'

mozes i umesto select CHARACTER_MAXIMUM_LENGTH da stavis select *, pa vidi sta sve ima od informacija o svakom polju, mozda ti je jos nesto koristan podatak
Hvala jos jednom resila sam uz Vasu pomoc na sledeci nacin:

SELECT TOP 100 PERCENT i_s.TABLE_NAME AS ImeTabele, i_s.COLUMN_NAME AS ImeKolone, s.[value] AS Opis, i_s.DATA_TYPE AS TipPodatka, i_s.*, s.*,
CHARACTER_MAXIMUM_LENGTH AS DuzinaPolja
FROM INFORMATION_SCHEMA.COLUMNS i_s LEFT OUTER JOIN
dbo.sysproperties s ON s.id = OBJECT_ID(i_s.TABLE_SCHEMA + '.' + i_s.TABLE_NAME) AND s.smallid = i_s.ORDINAL_POSITION AND
s.name = 'MS_Description'
WHERE (OBJECTPROPERTY(OBJECT_ID(i_s.TABLE_SCHEMA + '.' + i_s.TABLE_NAME), 'IsMsShipped') = 0)
ORDER BY i_s.TABLE_NAME, i_s.ORDINAL_POSITION
Samo sada vidim da za int i smalldatetime ne vidim duzinu polja,kako to da prevazidjemo?

Poslednja ispravka: catwoman (11.6.2010 u 13:49)
catwoman je offline   Odgovor sa citatom ove poruke
Stara 11.6.2010, 13:37   #6
irreal
V.I.P. Programiranje
 
Član od: 9.1.2009.
Lokacija: Beograd, Banovo Brdo
Poruke: 1.157
Zahvalnice: 83
Zahvaljeno 448 puta na 303 poruka
Određen forumom Re: SQL - Sistemski podaci o tabelama

odlicno! drago mi je da je ste uspeli da izvucete potrebne podatke
irreal je offline   Odgovor sa citatom ove poruke
Stara 11.6.2010, 13:52   #7
catwoman
Član
 
Član od: 28.10.2008.
Poruke: 42
Zahvalnice: 4
Zahvaljeno 0 puta na 0 poruka
Određen forumom Re: SQL - Sistemski podaci o tabelama

Samo da pitam zasto mi za int i smalldatetime ne prikazuje duzinu polja?Unapred hvala
catwoman je offline   Odgovor sa citatom ove poruke
Stara 11.6.2010, 14:03   #8
irreal
V.I.P. Programiranje
 
Član od: 9.1.2009.
Lokacija: Beograd, Banovo Brdo
Poruke: 1.157
Zahvalnice: 83
Zahvaljeno 448 puta na 303 poruka
Određen forumom Re: SQL - Sistemski podaci o tabelama

pretpostavljam jer se za njih tacno zna koliko su veliki ?

int ima 4 bajta (32 bita), i moze da prikaze vrednosti od −2,147,483,648 do +2,147,483,647

datetime se u pozadini cuva kao dva int-a, dakle 8 bajtova. prvi int odredjuje broj dana od base datuma (01.01.1900) a drugi int broj milisekundi od ponoci tog dana (od 00:00:00)

ali ove informacije ti bas i nisu korisne i potrebne...
irreal je offline   Odgovor sa citatom ove poruke
Stara 11.6.2010, 14:39   #9
Todors
Član
 
Član od: 16.4.2010.
Lokacija: Pančevo
Poruke: 462
Zahvalnice: 41
Zahvaljeno 68 puta na 63 poruka
Određen forumom Re: SQL - Sistemski podaci o tabelama

Cool, ovo je bas korisno. Nisam znao da postoji ta komanda
Todors je offline   Odgovor sa citatom ove poruke
Odgovor

Bookmarks sajtovi

Alatke vezane za temu
Vrste prikaza

Vaš status
Ne možete postavljati teme
Ne možete odgovarati na poruke
Ne možete slati priloge uz poruke
Ne možete prepravljati svoje poruke

BB kod: uključeno
Smajliji: uključeno
[IMG] kod: uključeno
HTML kod: isključeno


Slične teme
tema temu započeo forum Odgovora Poslednja poruka
Drajveri za SQL Server 2008 catwoman Aplikativni softver 0 10.5.2010 13:14
Kratko i jasno: da li je Joomli moguće menjati SQL bazu... Teva Web razvoj 1 20.9.2009 23:59
SQL Server 2000 Zoran035 Programiranje 2 18.10.2007 13:23
Upomoc koji SQL za VB6 corcrash Programiranje 2 10.10.2007 23:16


Sva vremena su po Griniču +2 h. Sada je 17:51.


Powered by vBulletin® verzija 3.8.7
Copyright ©2000–2024, vBulletin Solutions, Inc.
Hosted by Beograd.com