Mam kilka tablic Access z wieloma polami. Migrowałem każdą tabelę dostępu do 6 lub 7 tabel serwerów sql. Używam serwera sql 2008. Teraz chcę używać programu Access jako interfejsu użytkownika, aby móc wprowadzić dane w dostępie, ale będzie on przechowywany na serwerze sql. Wiem, że muszę nawiązać połączenie ODBC. Ale nie jestem pewien, jak utworzyć formularz dostępu, aby użyć go jako front-end. Przykro mi, jeśli to podstawowe pytanie ...Dostęp jako front end i serwer sql jako backend
Odpowiedz
Prawdopodobnie będziesz chciał zacząć od pustej bazy danych programu Access (ponieważ struktury tabel i wszelkie istniejące formularze i raporty nie będą zgodne z tym, co utworzyłeś w serwerze SQL).
Pierwszym krokiem jest nawiązanie połączenia ODBC z bazą danych SQL Server. Następnie "połączysz" tabele w SQL Server z bazą danych Access.
Teraz masz bazę danych Access ze wszystkimi tabelami połączonymi z SQL Server. Te tabele nadal "żyją" w SQL Server, a po ich edycji w Access dane będą przechowywane w SQL Server.
Następnie można tworzyć formularze dostępu i raporty przy użyciu tych tabel, tak jakby tabele były natywne dla programu Access.
Można utworzyć połączenie ODBC. Możesz również utworzyć połączenie ADODB. Jeśli Twoim celem jest aktualizacja lub modyfikacja bazy danych SQL, oba połączenia będą działać.
Teraz, sądzę, że musisz zapoznać się z odpowiednimi obiektami. Powinny to być tabele, zapytania, polecenia itp., Które pozwolą na przykład na zbieranie zestawów rekordów z zapytań SQL ... Po uzyskaniu jasności możesz na przykład przypisać zestaw rekordów do formularza metodą Set myForm.recordset = myRecordset.open ...
.
Najbardziej uniwersalnym sposobem jest użycie łączy ODBC do tabel i widoków SQL Server. Takie podejście pozwala na elastyczne łączenie z innymi źródłami danych ODBC, tabelami w innych plikach baz danych Jet/ACE, tworzenie tabel Jet/ACE lokalnie w bazie danych, link do arkusza kalkulacyjnego Excela i tak dalej. Możesz włączyć szeroki zakres źródeł danych.
Jeśli wybierzesz ADP, będziesz ograniczony do połączenia OLE DB z pojedynczą instancją SQL Server. I będziesz zasadniczo zamknięty na serwerze SQL. Nie można przełączyć aplikacji na inną bazę danych klient-serwer bez większego wysiłku związanego z ponownym opracowaniem.
Jeśli chodzi o obciążenie związane z wdrażaniem za pomocą ODBC, chociaż korzystanie z DSN podczas programowania może być wygodne, przed rozpoczęciem wdrażania należy przekonwertować łącza ODBC na połączenia bez numerów DSN. W ten sposób twój użytkownik nie będzie wymagał DSN. Zobacz stronę Douga Steele'a: Using DSN-Less Connections
Utworzono pustą bazę danych dostępu. Zrobiłem połączenie ODBC z serwerem sql, przechodząc do "Narzędzia administracyjne-> Źródła danych-> System DSN-> dodał serwer sql i nazwę bazy danych, które chciałem użyć jako front end Teraz mam równieżpołączone w serwerze sql przez przy użyciu 'sp_addlinkedserver 'connect', 'Access 2007', 'Microsoft.ACE.OLEDB.12.0', 'C: \ connect.accdb'' ale tabele z serwera sql nie pojawiają się w pustej bazie danych dostępu. Gdzie ja czy tu się mylę? – alex
Po utworzeniu nazwy DSN nie dodawaj niczego w programie Access. Twój DSN opisze właściwości połączenia z SQL Server. Nie jest to funkcja specyficzna dla programu Access, ale powinna być użyteczna dla każdej aplikacji, która może korzystać z połączeń ODBC. – HansUp
Dzięki, dostałem to, zawodziłem w "łączeniu stołów". Teraz podałem poprawną nazwę ścieżki dla DSN i jej działanie! Czy możesz mi zasugerować, który z nich będzie najlepszy w długim okresie jako interfejs użytkownika Access lub interfejs w dotnet? – alex
- 1. Angular2 i Spring Boot. Jak obsługiwać front-end?
- 2. Podłączanie MongoDB do front-end?
- 3. Google/Facebook OAuth2 w Rails Aplikacja Front-end z szynami-api jako usługa internetowa
- 4. Najlepszy web front-end dla SVN?
- 5. Front End for Running Talent Jobs
- 6. Dodaj wtyczki do Bootstrap js do brunch-config.js, aby używać ich jako zasobów front-end?
- 7. Jakie technologie front-end i back-end wykorzystywane są przez Google i Facebooka?
- 8. Front End Development Workflow z angularjs i gruntjs
- 9. Ionic jako serwer WWW
- 10. Drupal jako backend dla RESTful API?
- 11. Architektura oparta na JSON, jak najlepiej zsynchronizować front end i back-end
- 12. Projekt parasola z wieloma aplikacjami zawierającymi logikę front end.
- 13. Urządzenia iOS jako serwer WWW
- 14. Technologia zaplecza dla technologii front-end, takich jak Twitter Bootstrap
- 15. Używanie edytora front-end z wtyczką statycznych stron
- 16. Najlepszy sposób zabezpieczenia witryny javascript front end/REST architektury zaplecza?
- 17. Serwer SQL - jak ustawić podpowiedź (nolock) jako domyślną?
- 18. uruchom skrypt Pythona jako serwer cgi apache
- 19. „z ... jako” SQL Navigator
- 20. Backend AngularJS i PHP
- 21. Uruchom serwer MySQL jako usługa (Win 8)
- 22. Jak ustawić cairo jako domyślny backend dla x11() w R?
- 23. AWS Cognito jako back-end do uwierzytelniania Django
- 24. Zagraj w grę jako serwer gier
- 25. Jak uruchomić kontener dokowania jako serwer
- 26. Serwer Apache jako serwer proxy dla problemu Jboss
- 27. Jak solidne jest nodejs jako serwer http?
- 28. C# SQL Top jako parametr
- 29. Co to jest czysty front-end workflow z altanką i łykiem?
- 30. SQL FOR XML - Dane wyjściowe jako elementy lub jako Atrybuty
Dlaczego potrzebujesz ADN dla połączenia DSN lub ODBC? Łączność SQL Server za pośrednictwem SQLOLEDB jest wbudowana. DSN to także obciążenie związane z wdrażaniem. ADP istnieją od czasu Access 2000/2003. – gbn
W zależności od preferencji użytkownika. ADP jest kolejnym prawidłowym rozwiązaniem. Moje doświadczenie dotyczy migracji do połączonych tabel (mniej ważne dla tego użytkownika, jeśli wszystkie struktury tabel są nowe). –
@LarryLustig Zrobiłem połączenie ODBC z serwerem sql, przechodząc do 'Narzędzia administracyjne-> Źródła danych-> System DSN-> dodano serwer sql i nazwę bazy danych, którą chciałem użyć jako interfejsu użytkownika" Teraz mam również połączone w serwer sql za pomocą 'sp_addlinkedserver 'connect', 'Access 2007', 'Microsoft.ACE.OLEDB.12.0', 'C: \ connect.accdb'' ale tabele z serwera sql nie pojawiają się w pustej bazie danych dostępu .. Gdzie się tu mylę? – alex