Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   SQL FROM ObjectID (https://www.delphipraxis.net/178972-sql-objectid.html)

Mokus 6. Feb 2014 13:03

Datenbank: SQL Server • Version: XX • Zugriff über: XX

SQL FROM ObjectID
 
Hey hoy,

ganz kurz. Mir ist die Object ID bekannt und der Name der Tabelle

* from sys.object
where typ u.


Kann ich auf diese tabellen nun irgendwie drauf zugreifen ?

nuclearping 6. Feb 2014 13:18

AW: SQL FROM ObjectID
 
Deine Frage liest sich irgendwie so:

Mir ist der Autotyp bekannt und die Farbe des Autos.

Blau
30 km/h

Kann ich jetzt irgendwie den Reifenhersteller herausfinden?

Der schöne Günther 6. Feb 2014 13:32

AW: SQL FROM ObjectID
 
es gibt nur 10 arten von menschen !
die welche die frage verstehen und die die nicht. !

jobo 6. Feb 2014 13:34

AW: SQL FROM ObjectID
 
Der klassische Weg wäre wohl:
Code:
Select * from [Name der Tabelle]
Ohne Intimkenntnisse des SQL Servers lehne ich mich mal weit aus dem Fenster und behaupte, eine Objekt ID aus Systabellen wäre das allerletzte was ich zum Zugriff benutzen würde.
Selbst wenn Du keinen Zugriff auf die Tabellendaten benötigst, sondern auf Dictionary Informationen, dann geht das über den Tabellennamen. Dazu gibt es aber offizielle Information SCHEMA Bereiche.

Mokus 12. Feb 2014 08:50

AW: SQL FROM ObjectID
 
Code:
Select * from [ Name der Tabelle] durch [Object ID]
ist dieses Möglich, das ich den namen durch die ID ersetzen kann ?

DeddyH 12. Feb 2014 09:00

AW: SQL FROM ObjectID
 
Erklär doch mal, was Du vorhast.

jobo 12. Feb 2014 09:27

AW: SQL FROM ObjectID
 
Je nach System wäre es möglich, den Namen der Tabelle durch eine Funktion über die ID zu besorgen, das dann vorzuverarbeiten und am Ende ein "normales" Selectstatement zu bekommen/produzieren.
Mir ist nicht bekannt, dass SQL Engines Tabellen Objekte anhand einer ID erkennen und Statements nur über die Objekt ID entsprechend verarbeiten. (Obwohl sie das intern evtl. sogar selbst so machen.)

Mikkey 12. Feb 2014 09:53

AW: SQL FROM ObjectID
 
Keine Ahnung, ob ich das verstehe, was Du gefragt hast...

Aus der Objekt-ID kannst Du den Namen der Tabelle gewinnen und mit diesem wiederum ein SQL-Statement zusammensetzen.

Ist es das was Du willst? Geht es darum. den Tabellennamen zu ermitteln?

Edit: Den Namen kennst Du, also ist das nicht das Problem

Delphi-Quellcode:
Format('SELECT * FROM %s' [tableName]);
Ob ein Join zwischen Systemtabelle und Usertabellen möglich ist, um das vorherige Ermitteln des Tabellennamens zu vermeiden, weiß ich nicht. es läst sich aber sicher leicht ausprobieren, ob ein Join zwischen System- und User-Tabelle funktioniert.

Edit2: Auf diese Weise kann man das machen:
Code:
DECLARE @tab nvarchar(100);
SET @tab = (Select Top(1) Name from sysobjects where id=1275151588);
EXEC('SELECT * FROM ' + @tab)

Furtbichler 13. Feb 2014 08:49

AW: SQL FROM ObjectID
 
Zitat:

Zitat von jobo (Beitrag 1246933)
Dazu gibt es aber offizielle Information SCHEMA Bereiche.

... Über SysObjects zu gehen ist schon ok, geht auch anders, aber auf die Schnelle wäre das akzeptabel. Allerdings scheinen die Kenntnisse des Fragestellers bei weitem nicht auszureichen, hier etwas erreichen zu können.

jobo 13. Feb 2014 10:09

AW: SQL FROM ObjectID
 
Der Fragesteller arbeitet anscheinend an etwas sehr geheimnisvollem. Ohne Feedback ist es recht müßig, da weiter zu spekulieren.
Ohnehin scheint mir die Frage recht merkwürdig. Man könnte analog auch versuchen, ob man dyndns.org nicht auch per IP abfragen kann.


Alle Zeitangaben in WEZ +1. Es ist jetzt 23:51 Uhr.
Seite 1 von 2  1 2      

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz