Toon posts:

[Sql Server] Get table definition

Pagina: 1
Acties:

Verwijderd

Topicstarter
Ik wil graag de table definition van een willekeurige tabel kunnen opvragen. Dus alle columns, het datatype van elke column en of ze NULL accepteren.

Ik heb wat gezocht, maar voor Sql Server kan ik niet zoveel vinden. Voor Oracle zou "Desc <tablename>" volstaan. Het equivalent in Sql Server zou zijn "sp_help <tablename>".

Als ik dan echter een kleine test uitvoer krijg ik de volgende gegevens bij onderstaande table definition. Is dit mogelijk in Sql Server en zo ja, hoe?

code:
1
2
3
4
5
TestTable                  dbo                      usertable

Column1     nvarchar(50)        NULL
Column2     int         NOT NULL
Column3     datetime        NULL

[ Voor 3% gewijzigd door Verwijderd op 11-06-2008 18:27 ]


  • _js_
  • Registratie: Oktober 2002
  • Laatst online: 25-10 14:28
Dus je wilt kolommen, datatype en of ze null kunnen zijn, en wanneer je sp_help gebruikt krijg je precies die gegevens. Wat is je vraag precies?

Er zijn naast sp_help nog andere manieren om dezelfde informatie te vinden, de sysobjects en syscolumns tabellen in ms sql server <= 2000, en information_schema views in >= 2000 (dit had je natuurlijk ook heel makkelijk in de documentatie kunnen vinden).

  • whoami
  • Registratie: December 2000
  • Laatst online: 22:26
Wat is je vraag nu ? Je hebt iets uitgeprobeerd, en je ziet een bepaalde output, en je vraagt of het mogelijk is ? :?

@_js_: de sysobjects heb je idd in SQL Server 2000, maar ook daar gebruik je die best niet, en maak je best gebruik van die information_schema views.
Ik heb hier nu geen SQL Server2000 staan, maar vziw heb je die ook in 2000 dus.

https://fgheysels.github.io/


Verwijderd

Download gewoon SQL Studio Management Express en zoek de tabel op. Klik met je rechtermuisknop op de tabel en klik op Modify :)

  • TeeDee
  • Registratie: Februari 2001
  • Laatst online: 23:16

TeeDee

CQB 241

Verwijderd schreef op donderdag 12 juni 2008 @ 15:11:
Download gewoon SQL Studio Management Express en zoek de tabel op. Klik met je rechtermuisknop op de tabel en klik op Modify :)
Ja, da's snugger. Maarrrrrr, misschien wil JMfx zelf iets maken voor management taken. Echt handig is die opmerking dus niet.

@whoami; voor jouw gemoeds- en/of nachtrust: SQL2000 heeft deze ook.

Heart..pumps blood.Has nothing to do with emotion! Bored


Verwijderd

Nou ik kan anders niet veel meer uit zijn vraag opmaken. Hij wil wat gegevens opvragen over een tabel. Of de kolommen NULL mogen zijn e.d. dus dan vond ik mijn antwoord niet eens zo gek.

  • Coltrui
  • Registratie: Maart 2001
  • Niet online

Coltrui

iddqd

whoami schreef op woensdag 11 juni 2008 @ 20:43:
Wat is je vraag nu ? Je hebt iets uitgeprobeerd, en je ziet een bepaalde output, en je vraagt of het mogelijk is ? :?

@_js_: de sysobjects heb je idd in SQL Server 2000, maar ook daar gebruik je die best niet, en maak je best gebruik van die information_schema views.
Ik heb hier nu geen SQL Server2000 staan, maar vziw heb je die ook in 2000 dus.
Waarom gebruik je Sysobjects beter niet? Ik krijg het plots heel warm want in mijn huidig project moet ik ook metadata-info hebben en - je raadt het al - ik gebruik Suysobjects, Syscolumns, Sysforeignkeys etc...

  • whoami
  • Registratie: December 2000
  • Laatst online: 22:26
Die SchemaInformation views zijn eigenlijk niets anders dan een view / abstractie over die sysobjects etc... tabellen.
Als MS beslist om wat wijzigingen aan te brengen in hun sys tabellen, dan moet jij ook jouw code aanpassen als je die sys* tabellen gebruikt.
Gebruik je die information_schema views, dan zal MS er natuurlijk voor zorgen dat die views ook rekening houden met de wijzigingen die ze in hun systeem tabellen gedaan hebben, en hoef jij normaal jouw code niet aan te passen.

https://fgheysels.github.io/


  • Coltrui
  • Registratie: Maart 2001
  • Niet online

Coltrui

iddqd

Ok, duidelijk. Merci.

Back to the drawing board. :'(

Verwijderd

Topicstarter
Ik wil inderdaad een soort van database explorer maken voor in mijn programma. Voor de duidelijkheid, ik krijg met de query regel 1 terug. Wat ik graag terug wil krijgen is regel 3,4 en 5. Ik zal eens kijken naar information_shema.

  • whoami
  • Registratie: December 2000
  • Laatst online: 22:26
met welke query krijg je regel 1 terug ? (En wat is regel 1 )?
Als je sp_help uitvoert, moet je dan natuurlijk wel alle resultaten die teruggegeven worden uitlezen, en niet enkel die ene regel ...

https://fgheysels.github.io/

Pagina: 1