Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

Zugriff auf Access DB von extern?

Frage Entwicklung Datenbanken

Mitglied: Nearle

Nearle (Level 1) - Jetzt verbinden

03.05.2010 um 14:50 Uhr, 8501 Aufrufe, 7 Kommentare

Ich möchte externen Mitarbeitern den Zugriff auf unsere hausinterne Access-Datenbank ermöglichen, aber wie?

Hallo,
ich habe eine Access-Datenbank (200 MB) im Haus und möchte diese unseren Mitarbeitern extern (30 Leute) zugänglich machen. Diese sollen immer mal wieder drauf zugreifen und auch Daten eintragen können. Sicherlich werden diese höchstens 1-2 mal in der Woche für ein paar Minuten drauf zugreifen müssen.

Problem 1: Die Mitarbeiter haben auf ihren Rechnern kein Access
Problem 2: Die Datenbank muß physisch in unserer Firma bleiben.

Wie würdet ihr das lösen?
Problem mit Access-DB sind bei dieser Größe ja, dass alle Daten übertragen werden müssen.

Ich hätte hier die technischen Voraussetzungen um den Leuten einen VPN-Tunnel einzurichten, danach müssten sie per remote auf die jeweilige Maschine mit Access und der Datenbank, aber das is alles umständlich und nicht sauber. Oder per Teamviewer auf eine Kiste im Betrieb schalten lassen? Dann wären die Mitarbeiter relativ einfach auf der jeweiligen Kiste, aber es geht halt immer nur eine Leitung und die Lizenzierung wäre teuer.

Ich danke Euch für Ratschläge
Mitglied: bernie2909
03.05.2010 um 15:37 Uhr
Hi,

ich hab sowas mit VM Server, also ws auf vm ware laufen, und die Standorte verbinden sich via Remote desktop auf einer VM ws.

Vorteil, es werden nur Daten zum Anzeigen der Vm Übertragen, und Die rechne Leistzung bleibt im Hauptstandort. Das entlastet den Externen Netzverkehr.

Gruß

Bernie
Bitte warten ..
Mitglied: Edi.Pfisterer
03.05.2010 um 15:46 Uhr
Hallo!
Die eleganteste Lösung ist vermutlich, ein paar ASP Seiten zu basteln, mit denen Du Deine User auf die DB per Browser zugreifen lässt...
Vorteile:
Du brauchst kein VPN, kein ACCESS, einen Browser hat jeder, etc...

Falls Du dabei Hilfe brauchst: Melde Dich wieder...
Ansonsten gibts im WWW eine Vielzahl von praktischen Anleitungen, wie so etwas leicht zu realisieren ist...
lg
Bitte warten ..
Mitglied: Nearle
03.05.2010 um 15:56 Uhr
@Bernie:
Meine externen Mitarbeiter sind aber nicht an einem bestimmten Standort, sondern z.B. via Lapotp im home office!
So müsste ich erst eine VPN Verbindung zu uns in die Fa. aufbauen und danach via Remote desktop zum jeweiligen Server und der dortigen DB. Sehr umständlich.

@urobe73:
Dieses Hilfe-Angebot nehme ich sehr gerne an. HTML Programmierkenntnisse habe ich zwar nicht viele, aber die Strukturen und einfache Bausteine kenne ich.
Wenn Du mir links finden könntest, wie so eine DB einfach via browser und ASP zu editieren ist, dann wäre ich Dir super dankbar.
Das hört sich wirklich nach ner guten Lösung an.
Bitte warten ..
Mitglied: Edi.Pfisterer
03.05.2010 um 16:18 Uhr
Hallo!
Ich muss jetzt Heim (oder will ), und Rom wurde ja auch nicht an einem Tag erbaut... aber das bekommen wir schon hin!
praktisch wäre, wenn Du hier die Struktur der DB inkl. Felddatentyp angeben könntest...
(oder halt per PM, falls Du irgendwelche Bedenken hast...)

alternativ könntest du ja die Feldnamen etwas "verfälschen" und es doch hier posten. Das hätte den Vorteil, das mehrer hier mitbasteln können, was die Zeit verkürzen würde, bis das Teil läuft...


lg
bis morgen
Edi
Bitte warten ..
Mitglied: Edi.Pfisterer
04.05.2010 um 08:31 Uhr
Hallo!
ungeachtet Deiner DB mal ein bissl was zum Einstimmen...

1.) Du brauchst einen funktionierenden IIS (Start/Systemsteuerung/Software/WindowsKomponenten hinzufügen). Achte darauf, dass Du die Verarbeitung von ASP - Seiten mitinstallierst (Anleitungen dazu gibts wie Sand am Meer im www)
1a) nach Installation des IIS sollte am Server unter http://localhost eine Seiter erscheinen...

2.) Alle ASP-Seiten solltest Du per default in C:\inetpub\wwwroot speichern (falls Du mit der IIS-Verwaltungskonsole zurecht kommst, kann das auch wo anders sein

3.) Die DB liegt idealierweise irgendwo am Server mit dem IIS, kann aber auch wo anders sein. in diesem Fall solltest Du das LW mit der DB halt (per skirpt im Autostart) mappen [Anm.: beim Reboot geht dieses mapping bis zum 1. login verloren, wodurch die DB vorübergehend übers www nicht erreichbar sein wird...]

4.) auf der DB muss der IUSR (das ist der user, der bei der IIS-Installation angelegt wird) Schreibrechte haben (NTFS Dateiberechtigungen)

5.) Folgender Beispielcode ermöglicht nun, dass deine User übers www auf aus der db lesen können und eine einfache Suche starten können.
Zur besseren Übersichtlichkeit habe ich dir 2 Dateien hergerichtet (beide sollten im wwwroot Verzeichnis stehen):

Folgenden Code hat eine meiner Schülerinnen erstellt, könnte sein, dass er nicht 100%ig sauber ist
aber: er funktioniert fix - einen besseren habe ich grad nicht für copy/paste gefunden (und meine eigenen sind als Einsteigerbeispiel leider wenig geeignet...)

1.) inc_db.asp
01.
<% 
02.
set conn=server.createobject("adodb.connection") 
03.
 
04.
' DSNlose Verbindung zur Datenbank variante A: 
05.
' DSNtemp="DRIVER={Microsoft Access Driver (*.mdb)}; " 
06.
' DSNtemp=dsntemp & "DBQ=" & server.mappath("Mewa.mdb") 
07.
 
08.
' DSNlose Verbindung zu einer MS Access Datenbank Variante B: 
09.
DSNtemp = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=c:\webspace\test\myDB.mdb" 
10.
conn.Open DSNtemp 
11.
 
12.
%>
Erklärung:
durch obigen Code wird einfach nur eine Verbindung zur Datenbank myDB.mdb hergestellt. Falls die db im selben Verzeichnis wie die ASP Seiten liegt, ist Variante A denkbar, besser gefällt mir aber Variante B! (durhc die vorangestellten Hochkomma ist Variante A auskommentiert und wird daher nicht verarbeitet!)
Dein teil: einfach nur den Pfad ändern, fertig!

db_lesen.asp:
01.
<html> 
02.
<head> 
03.
<title>Mewa</title> 
04.
<meta name="author" content="eva.mueller"> 
05.
<meta name="generator" content="Ulli Meybohms HTML EDITOR"> 
06.
<link rel="stylesheet" href="css/mewa.css" type="text/css"> 
07.
<br> 
08.
<br> 
09.
 
10.
<br> 
11.
<img src="pix/logo.gif" alt="" border="0"></center> 
12.
</head> 
13.
 
14.
<body text="#000000" bgcolor="#000000" link="#000000" alink="#000000" vlink="#000000"> 
15.
<center><font size="+3">Kunden bearbeiten</font><br><br> 
16.
 
17.
 <!-- #include file="inc_db.asp" --> 
18.
 
19.
 
20.
<% if len(request("suchfeld")) >= 1 then %> 
21.
 
22.
        <% dim suche 
23.
        suche = request("suchfeld") 
24.
        suche = replace(suche,"*","%") 
25.
        if len(request("sort")) <= 2 then 
26.
        sortierung = "order by Auftragsnummer" 
27.
        else 
28.
        sortierung = "ORDER BY " 
29.
        sortierung1 = request("sort") 
30.
        if request("steigung") = "absteigend" then 
31.
        sortierung2 = " DESC" 
32.
        else 
33.
        sortierung2 = " ASC" 
34.
        end if 
35.
        sortierung = sortierung & sortierung1 & sortierung2 
36.
        end if 
37.
        %> 
38.
 
39.
 
40.
        <% 
41.
 
42.
         sql = "SELECT * FROM Mewa WHERE (((Mewa.Auftragsnummer) Like '%" & suche & "%')) "& sortierung &"" 
43.
        set rs=conn.execute(sql) 
44.
 
45.
        %> 
46.
 
47.
        <% if rs.eof then %> 
48.
 
49.
                 Ihre Suche brachte keine Ergebnisse 
50.
               
51.
        <% else %> 
52.
        <% dim vorkommen 
53.
        vorkommen=0 
54.
        %> 
55.
        <table> 
56.
        <tr> 
57.
         <td width=50px><b>Update</b></td> 
58.
 
59.
         <td align=center><b><a href="?suchfeld=<%=request("suchfeld") %>&sort=Auftragsnummer<% if sortierung2 = " ASC" then%>&steigung=absteigend<%end if %>">Auftrags- nummer</a></b></td> 
60.
         <td align=center><b><a href="?suchfeld=<%=request("suchfeld") %>&sort=Kundennummer<% if sortierung2 = " ASC" then%>&steigung=aufsteigend<%end if %>">Kunden- nummer</a></b></td> 
61.
         <td align=center><b><a href="?suchfeld=<%=request("suchfeld") %>&sort=Patchnummer<% if sortierung2 = " ASC" then%>&steigung=aufsteigend<%end if %>">Patch#</a></b></td> 
62.
         <td align=center><b><a href="?suchfeld=<%=request("suchfeld") %>&sort=Kollektion<% if sortierung2 = " ASC" then%>&steigung=absteigend<%end if %>">Kollektion</a></b></td> 
63.
         <td align=center><b><a href="?suchfeld=<%=request("suchfeld") %>&sort=Teile<% if sortierung2 = " ASC" then%>&steigung=aufsteigend<%end if %>">Teile</a></b></td> 
64.
         <td align=center><b><a href="?suchfeld=<%=request("suchfeld") %>&sort=Anmerkungsfeld<% if sortierung2 = " ASC" then%>&steigung=aufsteigend<%end if %>">Anmerkungen</a></b></td> 
65.
         <td align=center><b><a href="?suchfeld=<%=request("suchfeld") %>&sort=Embleme<% if sortierung2 = " ASC" then%>&steigung=aufsteigend<%end if %>">Embleme</a></b></td> 
66.
         <td align=center><b><a href="?suchfeld=<%=request("suchfeld") %>&sort=Emblemenummer<% if sortierung2 = " ASC" then%>&steigung=absteigend<%end if %>">Embleme#</a></b></td> 
67.
          <td align=center><b><a href="?suchfeld=<%=request("suchfeld") %>&sort=Namensschilder<% if sortierung2 = " ASC" then%>&steigung=absteigend<%end if %>">Namens- schilder</a></b></td> 
68.
          <td align=center><b><a href="?suchfeld=<%=request("suchfeld") %>&sort=Lieferscheindruck<% if sortierung2 = " ASC" then%>&steigung=absteigend<%end if %>">Lieferschein- druck</a></b></td> 
69.
 
70.
        </tr> 
71.
                <% 
72.
                On Error Resume Next 
73.
                rs.MoveFirst 
74.
                do while Not rs.eof 
75.
                 %> 
76.
        <% dim color 
77.
        rest = vorkommen mod 2 
78.
        if rest=1 then 
79.
        color = "#FFFFFF" 
80.
        else 
81.
        color= "#DADADA" 
82.
        end if 
83.
        %> 
84.
        <tr bgcolor=<%= color %>> 
85.
          
86.
 
87.
          <td><a href="lager_bearbeiten2.asp?Auftragsnummer=<%= rs.fields("Auftragsnummer") %>"><img src="pix/update.gif"  border="0" alt=""></a></td> 
88.
         <td><%= server.htmlencode(rs.fields("Auftragsnummer").value)%></td> 
89.
         <td><%= Server.HTMLEncode(rs.Fields("Kundennummer").Value)%></td> 
90.
         <td><%= Server.HTMLEncode(rs.Fields("Patchnummer").Value)%></td> 
91.
         <td><%= Server.HTMLEncode(rs.Fields("Kollektion").Value)%></td> 
92.
         <td><%= Server.HTMLEncode(rs.Fields("Anzahl_der_Teile").Value)%></td> 
93.
         <td><%= Server.HTMLEncode(rs.Fields("Anmerkungsfeld").Value)%></td> 
94.
         <td><%= Server.HTMLEncode(rs.Fields("Embleme").Value)%></td> 
95.
         <td><%= Server.HTMLEncode(rs.Fields("Emblemenummer").Value)%></td> 
96.
         <td><%= Server.HTMLEncode(rs.Fields("Namensschilder").Value)%></td> 
97.
         <td><%= Server.HTMLEncode(rs.Fields("Lieferscheindruck").Value)%></td> 
98.
        </tr> 
99.
 
100.
                <% vorkommen = vorkommen+1 %> 
101.
                <% 
102.
                rs.MoveNext 
103.
                loop%> 
104.
        </table> 
105.
        <br> 
106.
        <div class="positionierung"> 
107.
        Ihre Suche brachte <%=vorkommen%> Ergebnisse! 
108.
        </div> 
109.
        <% end if %> 
110.
        <% 
111.
        rs.close 
112.
        conn.close 
113.
        SET conn = nothing 
114.
        %> 
115.
 
116.
<% else %> 
117.
 
118.
        <span class="error"> 
119.
 
120.
        <% fehler = request("error") 
121.
        if fehler = "1" then %> 
122.
        Ihre Eingabe brachte keine Ergebnisse! 
123.
        <% end if %> 
124.
 
125.
        <% if fehler = "3" then %> 
126.
        Daten erfolgreich gelöscht! 
127.
        <% end if %> 
128.
        </span> 
129.
        <br> 
130.
 
131.
 
132.
 
133.
        <form action="db_lesen.asp" method="post" target=""> 
134.
        Auftragsnummer: <input type="Text" name="suchfeld" value="" size="25" maxlength=""><br> 
135.
        <br> 
136.
        <input type="Submit" name="absenden" value="auswählen"> 
137.
 
138.
        </form> 
139.
<br> 
140.
<br> 
141.
 
142.
<br> 
143.
<br> 
144.
<a href="Lagerstart.asp">zurück</a><% end if %> 
145.
<br> 
146.
<br> 
147.
 
148.
<div class=error>Last Update: <!--DATE-->06.05.2008<!--/DATE--></div> 
149.
</body> 
150.
</html>
Kurzer Erkärung:
Include der DB-Konfig
Test, ob der USer auf auswählen geklickt hat (und damit in der DB suchen will)
Falls ja: SQL-Befehl fragt in der DB in der Tablle MEWA ab
(Anm: Du erhälst solche SQL-Befehle, in dem Du eine Abfrage in Access modulierst, und dann links oben in der Ansicht auf SQL klickst:
SQL-Befehl kopieren, fertig)
(Anm 2: da SQL als Platzhalter das Zeichen % mag, die User aber den * gewohnt sind, wird dieser vor der Abfrage ersetzt)
Überschriften der Tabelle
do while --> Inhalte der DB am Bildschirm ausgeben
next
Falls der User noch nicht auf auswählen geklickt hat, wird ihm die Suchmaske gezeigt

Dein Teil: die SQL Abfrage an Deine DB anpassen; ZEILE 42
die einzelnen Feldnamen ausbessern -- rs.fields("feldname") ZEILE 90 bis 100

gutes gelingen
lass Dir Zeit und schau dir in Ruhe den Code durch, bei Fragen (die wirds sicher geben meld dich!
Bitte warten ..
Mitglied: Nearle
04.05.2010 um 08:51 Uhr
Ich mach mich voller Begeisterung ans Werk und schau wie weit ich klar komm. DANKE soweit...Fragen werden sicherlich kommen.
Bitte warten ..
Mitglied: Edi.Pfisterer
11.05.2010 um 09:08 Uhr
Hallo!
Wie stehen die Dinge? Konntest Du erste Erfolge erzielen? Bei Bedarf könnte ich Dir auch je eine Seite für
löschen/ändern/eintragen in die DB posten.

lg
Edi
Bitte warten ..
Ähnliche Inhalte
Windows Netzwerk
RDP kein Zugriff (intern und extern)
gelöst Frage von andi74151Windows Netzwerk6 Kommentare

Seit kurzen kann ich mich nicht mehr auf eine virtuelle Maschine windows 7 per RDP zugreifen. Es kommt immer ...

SAN, NAS, DAS
Synology NAS - Zugriff von extern
gelöst Frage von Axel90SAN, NAS, DAS15 Kommentare

Hallo, ein Kunde möchte ein Synology NAS (ich vermute es wird eine DS214) in seinem Netzwerk für eine zentrale ...

Router & Routing
PC Zugriff von Extern
Frage von flocky84Router & Routing17 Kommentare

Hallo zusammen, ich hab eine Frage und hoffe, dass ich hier richtig bin. Was ich vllt. noch erwähnen sollte ...

Verschlüsselung & Zertifikate
Zugriff auf mySQL-DB mit ODBC und SSL
Frage von Titan24Verschlüsselung & Zertifikate2 Kommentare

Ich möchte für einen Kunden sicher Daten von einer mySQL-DB via ODBC nur lesend abgreifen können. Da die Daten ...

Neue Wissensbeiträge
Microsoft

Update KB4073578 für AMD CPU (Spectre und Meltdown Lücke)

Information von sabines vor 3 StundenMicrosoft

Wegen Problemen (BOSD, nicht startende PCs) wurde das Update KB4056897 und KB4056894 für AMD CPUs zurückgezogen. Dieses Update KB4073578 ...

Mac OS X

MacOS wo ist die Tilde ?

Tipp von Alchimedes vor 16 StundenMac OS X1 Kommentar

Hallo, ich hab eine MacOS qwertz Keyboard auf US Layout umgestellt da die Sonderzeichen besser erreichbar sind. Leider fehlt ...

Datenschutz

Weitere Informationen zum Sicherheitsproblem BeA

Information von Penny.Cilin vor 23 StundenDatenschutz

Im folgenden ein weiterer Bericht über die Sicherheitsprobleme von Bea. Fataler Konstruktionsfehler im besonderen elektronischen Anwaltspostfach Gruss Penny

Windows 10

Systemdienste behalten nach Win10 inplace-Upgrade nicht die ggf. modifizierte Startart bei

Tipp von DerWoWusste vor 1 TagWindows 103 Kommentare

Stellt Euch vor, Ihr habt ein Win10 System und modifiziert dort die Startart von Systemdiensten. Zum Beispiel wollt Ihr ...

Heiß diskutierte Inhalte
Batch & Shell
Anmeldevorgang für Informatikraum (Schule) unter Windows
Frage von IngenieursBatch & Shell24 Kommentare

Hey zusammen, ich werde in naher Zukunft den Informatik Raum meiner jetzigen Schule von dem aktuellen Betreiber übernehmen (Vertrag ...

Windows 10
Netbook erkennt Soundkarte nicht - keinerlei Info zum Hersteller und Modell vom Netbook und Hardware bekannt
Frage von fyrb38Windows 1019 Kommentare

Guten Tag, meine Schwester reist in einigen Wochen für ein paar Monate ins Ausland und hat sich dafür ein ...

Batch & Shell
AD-Abfrage in Batchdatei und Ergebnis als Variable verarbeiten
gelöst Frage von Winfried-HHBatch & Shell19 Kommentare

Hallo in die Runde! Ich habe eine Ergänzungsfrage zu einem alten Thread von mir. Ausgangslage ist die Batchdatei, die ...

Microsoft Office
Deaktivieren von Startbildschirm und Backstage-Ansicht in Office 2016 per Batch-Datei
Anleitung von SarekHLMicrosoft Office17 Kommentare

Guten Morgen zusammen! Ich habe mir gestern (auch mit Hilfe dieses Boards) ein Script gebastelt, um in Office 2016 ...