sql table extendedproperties

24/09/2009 - 12:46 von Lars Eggert | Report spam
Hallo NG,

ist es möglich eine (eigens angelegte) ExtendedProperty eines Tables von
einem SQL (2005) in c# auszulesen?
Wie es bei den Columns geht ist mir klar, nur komme ich nicht an die
Ext.Props des Tables ran.

Das Szenario is folgendes, daß ich in den Ext.Props. eine beschreibung des
Tables liegen habe.
Diese würde ich gerne in einer Listbox unterbringen.
D.h. per foreach fahre ich über das gesamte DataSet und will nun für jeden
Table die Descriptions der Ext.Props. haben.

in etwa so:

foreach(DataTable myTable in myDataSet1.Tables)
{
listBox1.Items.Add(myTable.TableName + " " + *** Abfrage für die
Extended Property "myDescrition" auf Table myTable ***);
}


Danke und Gruß

Lars
 

Lesen sie die antworten

#1 Elmar Boye
24/09/2009 - 13:41 | Warnen spam
Hallo Lars,

Lars Eggert schrieb:
ist es möglich eine (eigens angelegte) ExtendedProperty eines Tables von
einem SQL (2005) in c# auszulesen?
Wie es bei den Columns geht ist mir klar, nur komme ich nicht an die
Ext.Props des Tables ran.




In DataSets werden solche Informationen im Standard nicht gespeichert.

Du kannst sie aber über ::fn_listextendedproperty abrufen:
<URL:http://msdn.microsoft.com/de-de/lib...3.aspx>

SELECT objname AS TableName,
CAST(value AS nvarchar(128)) AS Description
FROM ::fn_listextendedproperty('myDescrition', -- Eigenschaftsname
'user', 'dbo', -- oder Schema
'table', default, -- default oder einzelne Tabelle
default, default) -- oder einzelne Spalten

und dann ggf. in den ExtendedProperties der DataTable abspeichern.

Mehr siehe: <URL:http://msdn.microsoft.com/de-de/lib...3.aspx>
"Verwenden von erweiterten Eigenschaften für Datenbankobjekte"

Gruß Elmar

Ähnliche fragen