Wie die Funktion Autowert beim import von Access nach SQL Server 2008 erhalten?

Mitglied: StefanKittel

StefanKittel (Level 5) - Jetzt verbinden

29.01.2011, aktualisiert 18.10.2012, 8691 Aufrufe, 10 Kommentare

Hallo,
ich hab hier ne kleine Datenbank (Access 2010) die ich gerne im Netzwerk mit Berechtigungen nutzen möchten.
Dazu importiere ich die Daten in einen SQL 2008 Server mittels Daten importieren und exportieren und greife mittels ODBC aus der Datenbank darauf zu.

Funktioniert auch, aber die Eigenschaft "Autowert" ist bei den id-Spalten weg.
Wenn ich diese Funktion nun mit dem SQL Server Management Studio aktivieren will, erzählt er mir, dass dies nicht möglich sei, da es schon Daten gibt.
Die Daten löschen und neu eingeben ist aufgrund der Verknüpfungen aber sehr aufwendig.

Auch wenn ich den Startwert deutlich höher als aktuell verwendet wähle.

Außerdem ist das natürlich nervig bei ca. 40 Tabellen das einzutragen.

Wie kann man das überhaupt oder besser machen?

Danke

Stefan
Mitglied: NetWolf
29.01.2011 um 22:42 Uhr
Moin Moin,

ich hab hier ne kleine Datenbank (Access 2010) die ich gerne im Netzwerk mit Berechtigungen nutzen möchten.
definiere: "Berechtigungen"

Dazu importiere ich die Daten in einen SQL 2008 Server mittels Daten importieren und exportieren und greife mittels ODBC aus der
Datenbank darauf zu.
sehr umständlich

Funktioniert auch, aber die Eigenschaft "Autowert" ist bei den id-Spalten weg.
logisch, was hast du erwartet?

Wenn ich diese Funktion nun mit dem SQL Server Management Studio aktivieren will, erzählt er mir, dass dies nicht
möglich sei, da es schon Daten gibt.
jo

Die Daten löschen und neu eingeben ist aufgrund der Verknüpfungen aber sehr aufwendig.
das verstehe ich nicht, definiere: Verknüpfungen

Außerdem ist das natürlich nervig bei ca. 40 Tabellen das einzutragen.
was ist dann eine große Datenbank bei dir?

Wie kann man das überhaupt oder besser machen?
1. normaler Weise erstellt man ein Front- und ein Backend in Access. Das Backend beinhaltet die Tabellen, das Frontend den Rest.
2. wenn du das nicht willst, dann erstelle die Tabellen im SQL-Server und füge die Daten per Anfügeabfrage (ohne das ID-Feld) an.

Irgendwie kann ich deinen Ausführungen nicht folgen, warum du das so kompliziert gestaltest.

Grüße aus Rostock
Wolfgang
(Netwolf)
Bitte warten ..
Mitglied: StefanKittel
29.01.2011 um 22:50 Uhr
Hallo Wolfgang,

ich habe hier eine bestehende Datenbank mit ca. 40 Tabellen und ca. 1000 Datensätzen in diesen Tabellen.
Ich möchte nun erreichen, dass Jemand in der Tabelle Kunden nicht alle Einträge sieht.

Also ändere ich die Berechtigung auf dem SQL Server so, dass der Benutzer keinen Zugriff auf diese Tabelle mehr hat und erstelle eine Sicht mit entsprechendem Filter.
Das klappt auch.

Es gibt weitere Tabellen wie z.B. Rechnungen, Kundendaten, Konfigurationsdaten, etc die auf die ID der Kundentabelle zugreifen.
Wenn ich diese neu erstelle und eingeb oder importiere erhalten diese ja nun neue IDs und damit stimmen die Links nicht mehr.

Stefan
Bitte warten ..
Mitglied: Biber
29.01.2011 um 23:50 Uhr
Moin StefanKittel,

das, was du vermutlich als Plan bezeichnest, leuchtet mir auch nicht ganz ein.

Hauptnachfrage:
Willst du jetzt diese Datenbank "importieren" oder "migrieren", d.h. ab erfolgreichem Ankommen auf dem SQLServer 2008 ausschliesslich dort arbeiten und den Access-Krams stilllegen?
Oder soll etwa das SQLServer-seitige nur zur Anzeige der in Access erfassten Daten dienen?

Grüße
Biber
Bitte warten ..
Mitglied: StefanKittel
30.01.2011 um 00:01 Uhr
Hallo Biber,

die Daten wandern aus Access in den SQL Server.
Die MDB dient dann als Frontend und die Daten sind nur im SQL-Server.

Stefan
Bitte warten ..
Mitglied: Biber
30.01.2011 um 00:11 Uhr
Moin StefanKittel,

na ja, warum willst du dann das AutoWert-Feld weiterhin als Autowert-Feld erhalten - lass es doch als normales Integer-Feld mitlaufen.
Die ganzen PK- und Foreignkey-Constraints passen doch dann weiterhin und die einzige Stelle im Frontend, an der du etwas ändern musst,
ist das INSERTen eines neuen Datensatzes in der heutigen Mit-Autowert-Tabelle...
...da kannst du einen Dreizeiler zur "Berechnung" einer neuen "höchsten" Id einbauen. So what?

Grüße
Biber
Bitte warten ..
Mitglied: StefanKittel
30.01.2011, aktualisiert 18.10.2012
Hallo Biber,

stimmt schon, daran habe ich gar nicht gedacht.

Aber die meisten Datensätze werden einfach in der Tabellenansicht hinzugefügt. Ich müßte dann also "überall" Hinzufügenbuttons erstellen.

Gibts vieleicht eine einfachere Lösung?
https://www.administrator.de/forum/zugriff-auf-bestimmte-datens%c3%a4tze ...

Stefan
Bitte warten ..
Mitglied: Biber
30.01.2011 um 01:20 Uhr
Moin StefanKittel,

versteh ich nicht.
Wo musst du denn "überall" Hinzufügebuttons hinzufügen??
Wer soll denn da neue Datensätze anlegen dürfen in der Kundentabelle??

Und passiert das denn heute absolut ohne Benutzer-/Formularführung "direkt auf der Tabellenansicht"???

Und wenn ja, was wäre daran erhaltenswert?

Hast du denn konkrete Vorstellungen, wie dein Berechtigungskonzept aussehen soll (auf Ebene der Geschäftsprozesse zumindest)?

Die Angaben in deinem Parallelbeitrag kömmen mir eher unverbindlich und abstrakt vor (so wie die FDP-Blase " ein einfaches, gerechtes und faires Steuersystem").

Grüße
Biber
Bitte warten ..
Mitglied: StefanKittel
30.01.2011 um 01:29 Uhr
:-) face-smile

Es ist eine ganz einfache Datenbank.
Fast nur Formulare mit Unterformularen mit Beziehungen.

Da hat Jemand (nicht ich) einfach ein paar Tabellen angelegt und mittels Formularen und Beziehungen verlinkt.
Fertig.

Aber es funktioniert gut.
Es wird mittels Terminalserver darauf zugegriffen. Eine MDB und fertig.

Nun sollen aber nicht alle Benutzer alle Kunden mehr sehen dürfen und das ist das Problem.

Tabelle Kunden
Untertabelle Kunden_Emailadressen
Untertabelle Kunden_Korrespondez
Untertabelle Tabelle Kunden_Rechungen
UnterUntertabelle Tabelle Rechnungspositionen

etc.

Bild: http://www.test.skittel.de/2.jpg
Konnte man nicht mal im Forum Bilder direkt hochladen?

Stefan
Bitte warten ..
Mitglied: NetWolf
30.01.2011 um 18:02 Uhr
Moin Moin,

Es ist eine ganz einfache Datenbank.
Fast nur Formulare mit Unterformularen mit Beziehungen.
bei 40 Tabellen würde ich mal vermuten, dass es keine einfache Datenbank ist.

Da hat Jemand (nicht ich) einfach ein paar Tabellen angelegt und mittels Formularen und Beziehungen verlinkt. Fertig.
ok d.h. übersetzt, du hast keine Ahnung von Access und bist jetzt damit beauftragt, das Ganze zu ändern!?

Aber es funktioniert gut.
Es wird mittels Terminalserver darauf zugegriffen. Eine MDB und fertig.
wie gesagt: 2 MDBs wären besser

Nun sollen aber nicht alle Benutzer alle Kunden mehr sehen dürfen und das ist das Problem.
ok, dann erstellt man mal eben eine Zugangsberechtigung für die Tabellen und gut is, VBA kannst du doch?
oder man legt die MDB in einen Ordner, auf den nur die Berechtigten Personen Zugriff haben.

Tabelle Kunden
Untertabelle Kunden_Emailadressen
Untertabelle Kunden_Korrespondez
Untertabelle Tabelle Kunden_Rechungen
UnterUntertabelle Tabelle Rechnungspositionen
das sieht aus wie ein Faktura-Programm?

Konnte man nicht mal im Forum Bilder direkt hochladen?
ja


Grüße aus Rostock
Wolfgang
(Netwolf)
Bitte warten ..
Mitglied: Biber
31.01.2011 um 10:32 Uhr
Moin StefanKittel,

ergänzend zu NetWolf:
Nun sollen aber nicht alle Benutzer alle Kunden mehr sehen dürfen und das ist das Problem.
Das ist noch nicht ganz das, was ich als ausformuliertes Berechtigungskonzept bezeichnen würde.

Wenn der Zustand heute ist, es gibt nur eine MDB-Daten-und-Formulardatei und jeder user hat entweder gar keinen oder unbeschränkten Zugriff darauf....
... diese Ganz-oder-garnicht-Klamotte kannst du nicht einfach auf ein Datenbankblech hochschieben und dadurch automatisch datensatzweise Berechtigungen generieren.

Du musst doch irgendeinen Plan haben, ob es userbezogene/gruupen-/abteilungsbezogene Rechteabstufungen geben soll, ob einzelne Formulare sichtbar/unsichtbar sein sollen, ob nur Kunden aus dem Landkreis Soltau-Fallingbostel für alle bearbeitbar sein sollen oder was-auch-immer.

Grüße
Biber
Bitte warten ..
Heiß diskutierte Inhalte
Windows Server
Aufgabenplanung PowerShell Skript startet nicht
shooanVor 1 TagFrageWindows Server36 Kommentare

Hallo Zusammen, ich habe ein Skript bekommen das ich gerne so einstellen will das dieses beim Start des Exchangeservers aktiviert werden soll. Ein Ausführung ...

Internet
Webcam oder IPcam aus dem Internet erreichbar?
dertowaVor 1 TagFrageInternet17 Kommentare

Hallo zusammen, mal eine spezielle Frage, vielleicht kann jemand einen Dienst aufgrund guter Erfahrung empfehlen. Die Hündin einer guten Bekannten bekommt Nachwuchs und dafür ...

Windows Netzwerk
Computername erneut vergeben?
gelöst malkieVor 1 TagFrageWindows Netzwerk10 Kommentare

Guten Morgen, wir haben in der Firma Computernamen nach dem Muster: PC-Abteilung-Nummer (PC-IT-1) So, aktuell habe ich mal gelernt ganz früher, dass man den ...

LAN, WAN, Wireless
Unterschiedliche IP-Adressbereiche im Netzwerk
achkleinVor 17 StundenFrageLAN, WAN, Wireless17 Kommentare

Hallo, ich stehe vor einem Problem mit der WLAN-Verbindung zum Router (Fritzbox Cable 6490). Das verbundene Notebook hat die Adresse 192.168.0.164, Gateway ist 192.168.0.149: ...

Backup
Zusätzlicher Backupschutz gegen Ransomware Befall
staybbVor 1 TagFrageBackup4 Kommentare

Hallo zusammen, wir nutzen Veeam Backup & Replication als Backup für unsere Server und Files. Es werden immer on-side beim Kunden Backups auf einem ...

Hardware
Temperaturüberwachung Raum
ingo1988Vor 1 TagFrageHardware8 Kommentare

Hallo, ich brauche eure Hilfe. Ich möchte gerne eine Temperaturüberwachung installieren. Es sollte über Wifi funktionieren, ist aber kein Muss. Außerdem soll eine Alarmbenachrichtigung ...

Microsoft Office
E-Mail kommt nicht an
gelöst HeinrichMVor 1 TagFrageMicrosoft Office10 Kommentare

Hallo zusammen, in der letzten Zeit häufen sich die Meldungen, dass E-Mails nicht ankommen. Es ist kein Muster zu erkennen. Mal kommt eine Mail ...

Router & Routing
Verkaufe apu4.d4 Set
pasu69Vor 1 TagAllgemeinRouter & Routing11 Kommentare

Guten Abend zusammen, ich hätte ein APU4.D4 Bundle abzugeben, dass ich erst Anfang März gekauft habe. Leider ist die Hardware tatsächlich zu schwach, um ...