Qualifier und Owner ermitteln

09/09/2009 - 11:16 von ChristianH | Report spam
Hi,

beim dynamischen Generieren von SQL soll vor dem Tabellennamen ein Qualifier
und ein Owner stehen. Z.B:

SELECT * FROM [qualifier].[owner].[TableName]

[owner] wird z.B. der dbo sein. Hierbei müsste es sich um Schema handeln, da
ich beim Abruf von Metadaten über
myOdbcConnection.GetSchema( OdbcMetaDataCollectionNames.Tables);
die Informationen zum Tabellenschema (dbo) erhalte.

Wie komme ich an [qualifier] heran?
Was verbirgt sich hinter [qualifier]?

Grüße
Christian
 

Lesen sie die antworten

#1 Elmar Boye
09/09/2009 - 12:29 | Warnen spam
Hallo Christian,

ChristianH schrieb:
beim dynamischen Generieren von SQL soll vor dem Tabellennamen ein Qualifier
und ein Owner stehen. Z.B:

SELECT * FROM [qualifier].[owner].[TableName]

[owner] wird z.B. der dbo sein. Hierbei müsste es sich um Schema handeln,
da ich beim Abruf von Metadaten über
myOdbcConnection.GetSchema( OdbcMetaDataCollectionNames.Tables);
die Informationen zum Tabellenschema (dbo) erhalte.



Hàttest Du im gestrigen Threads die Links aufmerksam gelesen,
brauchtest Du die Frage nicht zu stellen.
Da es gestern aber über der Identifier Problematik untergegangen
sein kann, noch mal einige Links:

<URL:http://books.google.de/books?id&oci...=false>

Soweit es den SQL Server betrifft:
<URL:http://msdn.microsoft.com/de-de/lib...7.aspx>
"Trennung von Benutzer und Schema"

(d.h. Owner war gestern, heute reden wir von Schema)

führt zu
<URL:http://msdn.microsoft.com/de-de/lib...4.aspx>
"Bezeichner"

ADO.NET respektive ODBC wiederum bildet über seine Informationsfunktionen
àhnliches ab wie die INFORMATION_SCHEMA Sichten (ANSI-SQL):
<URL:http://msdn.microsoft.com/de-de/lib...8.aspx>

ein vierteiliger Name wie ihn der SQL Server kennt ist dort
nicht vorgesehen (und wird nur von wenigen RDBMS unterstützt
- siehe erster Link).

Gruß Elmar

Ähnliche fragen