AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi MS-SQL-Server und SELECT
Thema durchsuchen
Ansicht
Themen-Optionen

MS-SQL-Server und SELECT

Ein Thema von Jens Schumann · begonnen am 27. Mär 2008 · letzter Beitrag vom 29. Mär 2008
Antwort Antwort
Benutzerbild von Jens Schumann
Jens Schumann

Registriert seit: 27. Apr 2003
Ort: Bad Honnef
1.644 Beiträge
 
Delphi 2009 Professional
 
#1

MS-SQL-Server und SELECT

  Alt 27. Mär 2008, 13:51
Datenbank: MS-SQL-Server 2000 • Zugriff über: Native ADO
Hallo,
ich habe mit dem Adminuser admin1 eine Tabelle (tabel1) angelegt.
Jetzt habe ich einen User (abc Mitglied in db_datareader) angelegt.
Der Besitzer der Tabelle ist admin1.

Wenn ich mich mit dem User abc anmelde muss ich bei einem SELECT auf
die Tabelle table1 die Besitzernamen mit angeben.

SELECT * FOM admin1.tabel1 Gibt es auch eine Möglichkeit ohne admin1. auf die Tabelle mit User abc zu zugreifen?
I come from outer space to save the human race
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.624 Beiträge
 
Delphi 12 Athens
 
#2

Re: MS-SQL-Server und SELECT

  Alt 27. Mär 2008, 14:01
Mach doch den User zum Table-Owner.
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Benutzerbild von Jens Schumann
Jens Schumann

Registriert seit: 27. Apr 2003
Ort: Bad Honnef
1.644 Beiträge
 
Delphi 2009 Professional
 
#3

Re: MS-SQL-Server und SELECT

  Alt 27. Mär 2008, 14:07
Zitat von DeddyH:
Mach doch den User zum Table-Owner.
Mmmh - ich bin MS-SQL-Server Neuling. Wie macht man das?
Ist sichergestellt, dass der User weiterhin nur lesen kann?
I come from outer space to save the human race
  Mit Zitat antworten Zitat
NormanNG

Registriert seit: 1. Feb 2006
294 Beiträge
 
Delphi 2007 Professional
 
#4

Re: MS-SQL-Server und SELECT

  Alt 27. Mär 2008, 14:29
Hi,

besser ist es sicher, die Tabelle als DBO zu erstellen:

create table dbo.beispiel ( ... DBO-Objekte können von allen Usern ohne Prefix selektiert werden (obwohl ein "select * from dbo.tabelle" performanter ist).

[edit]
Um den weiteren Zugriff zu regeln, kann man mit
SQL-Code:
deny insert, update, delete on dbo.beispiel to public
grant select on dbo.beispiel to public
die Rechte für die Gruppe "Jeder" einschränken.
[/edit]
Gruß
Norman
  Mit Zitat antworten Zitat
Benutzerbild von Jens Schumann
Jens Schumann

Registriert seit: 27. Apr 2003
Ort: Bad Honnef
1.644 Beiträge
 
Delphi 2009 Professional
 
#5

Re: MS-SQL-Server und SELECT

  Alt 28. Mär 2008, 08:02
Hallo,
und wie sieht es aus, wenn ich keinen Einfluss darauf habe wer die Tabellen erstellt?
I come from outer space to save the human race
  Mit Zitat antworten Zitat
NormanNG

Registriert seit: 1. Feb 2006
294 Beiträge
 
Delphi 2007 Professional
 
#6

Re: MS-SQL-Server und SELECT

  Alt 28. Mär 2008, 08:08
Hi,

Zitat:
und wie sieht es aus, wenn ich keinen Einfluss darauf habe wer die Tabellen erstellt?
aber du schreibst doch
Zitat:
...ich habe mit dem Adminuser admin1 eine Tabelle (tabel1) angelegt...


Egal, mit welchem User man am SQL-Server angemeldet ist, kann man mit

create table dbo.beispiel ( ... eine Tabelle erzeugen, die "dem dbo gehört", und auf die alle ohne Qualifier zugreifen können.

Oder ich verstehe dein Problem noch nicht richtig?
Gruß
Norman
  Mit Zitat antworten Zitat
Benutzerbild von Jens Schumann
Jens Schumann

Registriert seit: 27. Apr 2003
Ort: Bad Honnef
1.644 Beiträge
 
Delphi 2009 Professional
 
#7

Re: MS-SQL-Server und SELECT

  Alt 28. Mär 2008, 09:41
Hallo,
das war wohl ein Mißverständnis. Ich habe admin1 geschrieben, weil alle Tabellen
zwingend mit diesem User angelegt werden müssen. Darauf habe ich keinen Einfluß.

Wir haben Hyperion (heute Qracel) Planning im Einsatz.
Das Planning besteht aus 2 Teilen einem OLAP Teil und einem
relationalen Respository (MS-SQL-Server). Beim Aufsetzen der
Planning Applikation muss u.a. ein Benutzer für den MS-SQL-Server
angegeben werden. Mit diesem Benutzer werden dann im Hintergrund
die Tabelle angelegt.

Ich möchte jetzt mit einem User, der nur Lesen darf diese Tabelle
auslesen.
I come from outer space to save the human race
  Mit Zitat antworten Zitat
NormanNG

Registriert seit: 1. Feb 2006
294 Beiträge
 
Delphi 2007 Professional
 
#8

Re: MS-SQL-Server und SELECT

  Alt 29. Mär 2008, 09:27
Hi,

wenn die Tabellen selbst nicht beeinflusst werden dürfen, kannst
du auch eine View erstellen, die den Tabellenowner qualifiziert,
selbst aber dem dbo gehört und damit ohne Besitzer-Angabe aufgerufen werden kann:
SQL-Code:
create view dbo.v_tabel1 ( spalte1, spalte2, ... )
as
select spalte1, spalte2, ...
  from admin1.tabel1
[edit]verschreibser[/edit]
Gruß
Norman
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 11:32 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz