<?xml version="1.0" encoding="utf-8"?><!-- generator="b2evolution/6.11.7-stable" -->
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:admin="http://webns.net/mvcb/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:atom="http://www.w3.org/2005/Atom">
	<channel>
		<title>Klaus Oberdalhoff - Kategorie: "Sonstiges"</title>
		<link>https://www.insidesql.org/blogs/klausobd/</link>
		<atom:link rel="self" type="application/rss+xml" href="https://www.insidesql.org/blogs/klausobd/?tempskin=_rss2" />
		<description>InsideSQL.org Blogs - Blogs über SQL Server</description>
		<language>de-DE</language>
		<docs>http://blogs.law.harvard.edu/tech/rss</docs>
		<admin:generatorAgent rdf:resource="http://b2evolution.net/?v=6.11.7-stable"/>
		<ttl>60</ttl>
				<item>
			<title>Update - 15.0.2022 - New ODBC and OLEDB Driver from MS - Update</title>
			<link>https://www.insidesql.org/blogs/klausobd/2022/03/08/update-15-0-2022-new-odbc-and-oledb</link>
			<pubDate>Tue, 08 Mar 2022 00:12:00 +0000</pubDate>			<dc:creator>klausobd</dc:creator>
			<category domain="main">Sonstiges</category>			<guid isPermaLink="false">4153@https://www.insidesql.org/blogs/</guid>
						<description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;15.02.2022 MS has released new ODBC and OLEDB drivers for download.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Caution - Maybe dangerous update - read first&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;https://accessexperts.com/blog/2022/03/07/new-drivers-for-sql-server-what-you-need-to-know/?utm_source=feedburner&amp;amp;utm_medium=email&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;https://accessexperts.com/blog/2022/03/07/new-drivers-for-sql-server-what-you-need-to-know/?utm_source=feedburner&amp;amp;utm_medium=email&lt;/a&gt;&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;MS Info OLEDB (ADO) Download&lt;br /&gt;&lt;a href=&quot;https://docs.microsoft.com/en-us/sql/connect/oledb/download-oledb-driver-for-sql-server?view=sql-server-ver15&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;https://docs.microsoft.com/en-us/sql/connect/oledb/download-oledb-driver-for-sql-server?view=sql-server-ver15&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Connectionstring Access&lt;br /&gt;Provider=MSOLEDBSQL; Server=myServerName\theInstanceName; Database=myDataBase; Trusted_Connection=yes;&lt;/p&gt;
&lt;p&gt;------&lt;/p&gt;
&lt;p&gt;MS Info ODBC (DAO)&lt;br /&gt;&lt;a href=&quot;https://docs.microsoft.com/en-us/sql/connect/odbc/microsoft-odbc-driver-for-sql-server&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;https://docs.microsoft.com/en-us/sql/connect/odbc/microsoft-odbc-driver-for-sql-server&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Connectionstring Access&lt;br /&gt;ODBC;DRIVER=ODBC Driver 17 for SQL Server; SERVER=myServerName\theInstanceName; DATABASE=myDatabase; Trusted_Connection=yes;&lt;/p&gt;
&lt;p&gt;------&lt;/p&gt;
&lt;p&gt;mfg Klaus&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;</description>
			<content:encoded><![CDATA[<p>Hi,</p>
<p>15.02.2022 MS has released new ODBC and OLEDB drivers for download.</p>
<p><strong>Caution - Maybe dangerous update - read first</strong></p>
<p><a href="https://accessexperts.com/blog/2022/03/07/new-drivers-for-sql-server-what-you-need-to-know/?utm_source=feedburner&amp;utm_medium=email" target="_blank" rel="noopener">https://accessexperts.com/blog/2022/03/07/new-drivers-for-sql-server-what-you-need-to-know/?utm_source=feedburner&amp;utm_medium=email</a></p>
<p> </p>
<p>MS Info OLEDB (ADO) Download<br /><a href="https://docs.microsoft.com/en-us/sql/connect/oledb/download-oledb-driver-for-sql-server?view=sql-server-ver15" target="_blank" rel="noopener">https://docs.microsoft.com/en-us/sql/connect/oledb/download-oledb-driver-for-sql-server?view=sql-server-ver15</a></p>
<p>Connectionstring Access<br />Provider=MSOLEDBSQL; Server=myServerName\theInstanceName; Database=myDataBase; Trusted_Connection=yes;</p>
<p>------</p>
<p>MS Info ODBC (DAO)<br /><a href="https://docs.microsoft.com/en-us/sql/connect/odbc/microsoft-odbc-driver-for-sql-server" target="_blank" rel="noopener">https://docs.microsoft.com/en-us/sql/connect/odbc/microsoft-odbc-driver-for-sql-server</a></p>
<p>Connectionstring Access<br />ODBC;DRIVER=ODBC Driver 17 for SQL Server; SERVER=myServerName\theInstanceName; DATABASE=myDatabase; Trusted_Connection=yes;</p>
<p>------</p>
<p>mfg Klaus</p>
<p> </p>]]></content:encoded>
								<comments>https://www.insidesql.org/blogs/klausobd/2022/03/08/update-15-0-2022-new-odbc-and-oledb#comments</comments>
			<wfw:commentRss>https://www.insidesql.org/blogs/klausobd/?tempskin=_rss2&#38;disp=comments&#38;p=4153</wfw:commentRss>
		</item>
				<item>
			<title>SQL Server 2017 - CU22 verfügbar</title>
			<link>https://www.insidesql.org/blogs/klausobd/2020/10/07/sql-server-2017-cu22-verfuegbar</link>
			<pubDate>Wed, 07 Oct 2020 19:16:00 +0000</pubDate>			<dc:creator>klausobd</dc:creator>
			<category domain="main">Sonstiges</category>			<guid isPermaLink="false">4123@https://www.insidesql.org/blogs/</guid>
						<description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;https://www.microsoft.com/en-us/download/details.aspx?id=56128&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;https://www.microsoft.com/en-us/download/details.aspx?id=56128&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;newest Update CU22&lt;/p&gt;
&lt;p&gt;mfg  Klaus&lt;/p&gt;</description>
			<content:encoded><![CDATA[<p>Hi,</p>
<p><a href="https://www.microsoft.com/en-us/download/details.aspx?id=56128" target="_blank" rel="noopener">https://www.microsoft.com/en-us/download/details.aspx?id=56128</a></p>
<p>newest Update CU22</p>
<p>mfg  Klaus</p>]]></content:encoded>
								<comments>https://www.insidesql.org/blogs/klausobd/2020/10/07/sql-server-2017-cu22-verfuegbar#comments</comments>
			<wfw:commentRss>https://www.insidesql.org/blogs/klausobd/?tempskin=_rss2&#38;disp=comments&#38;p=4123</wfw:commentRss>
		</item>
				<item>
			<title>Update - New ODBC and OLEDB Driver and SSMA from MS - Update</title>
			<link>https://www.insidesql.org/blogs/klausobd/2019/09/03/new-odbc-and-oledb-driver</link>
			<pubDate>Tue, 03 Sep 2019 09:25:00 +0000</pubDate>			<dc:creator>klausobd</dc:creator>
			<category domain="main">Sonstiges</category>
<category domain="alt">SQLServer</category>
<category domain="alt">MSOffice</category>			<guid isPermaLink="false">4094@https://www.insidesql.org/blogs/</guid>
						<description>&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;in Vorbereitung auf den neuen SQL Server 2019 hat MS neue ODBC und OLEDB Treiber zum Download bereitgestellt.&lt;/p&gt;
&lt;p&gt;In preparation for the new SQL Server 2019, MS has released new ODBC and OLEDB drivers for download.&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;MS Info OLEDB (ADO)&lt;br /&gt;&lt;a href=&quot;https://docs.microsoft.com/de-de/sql/connect/oledb/oledb-driver-for-sql-server&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;https://docs.microsoft.com/de-de/sql/connect/oledb/oledb-driver-for-sql-server&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Download&lt;br /&gt;&lt;a href=&quot;https://docs.microsoft.com/en-us/sql/connect/oledb/download-oledb-driver-for-sql-server&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;https://docs.microsoft.com/en-us/sql/connect/oledb/download-oledb-driver-for-sql-server&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Connectionstring Access&lt;br /&gt;Provider=MSOLEDBSQL; Server=myServerName\theInstanceName; Database=myDataBase; Trusted_Connection=yes;&lt;/p&gt;
&lt;p&gt;------&lt;/p&gt;
&lt;p&gt;MS Info ODBC (DAO)&lt;br /&gt;&lt;a href=&quot;https://docs.microsoft.com/en-us/sql/connect/odbc/microsoft-odbc-driver-for-sql-server&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;https://docs.microsoft.com/en-us/sql/connect/odbc/microsoft-odbc-driver-for-sql-server&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Connectionstring Access&lt;br /&gt;ODBC;DRIVER=ODBC Driver 17 for SQL Server; SERVER=myServerName\theInstanceName; DATABASE=myDatabase; Trusted_Connection=yes;&lt;/p&gt;
&lt;p&gt;------&lt;/p&gt;
&lt;p&gt;ADO / DAO Background Article (de Soto)&lt;br /&gt;&lt;a href=&quot;https://accessexperts.com/blog/2018/09/11/new-sql-server-odbc-and-oledb-driver/&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;https://accessexperts.com/blog/2018/09/11/new-sql-server-odbc-and-oledb-driver/&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;-------------&lt;/p&gt;
&lt;p&gt;&lt;em&gt;&lt;strong&gt;SSMA&lt;/strong&gt;&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;Download newest SSMA Access Version (2020_Sept_30 Vers: 8.14 - incl. Big Int und Filtered Index)&lt;br /&gt;&lt;a href=&quot;https://aka.ms/ssmaforaccess&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;https://aka.ms/ssmaforaccess&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Info SSMA - SQL Server Migration Assistant Info - Access&lt;br /&gt;&lt;a href=&quot;https://docs.microsoft.com/en-us/sql/ssma/sql-server-migration-assistant?view=sql-server-2017&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;https://docs.microsoft.com/en-us/sql/ssma/sql-server-migration-assistant?view=sql-server-2017&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Whats new in SSMA 8.14&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;https://docs.microsoft.com/en-us/sql/ssma/access/what-s-new-in-ssma-for-access-accesstosql?redirectedfrom=MSDN&amp;amp;view=sql-server-ver15&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;https://docs.microsoft.com/en-us/sql/ssma/access/what-s-new-in-ssma-for-access-accesstosql?redirectedfrom=MSDN&amp;amp;view=sql-server-ver15&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;&lt;strong&gt;If having installed more than one database engine the program may fail&lt;/strong&gt;&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;mfg&lt;/p&gt;
&lt;p&gt;Klaus&lt;/p&gt;</description>
			<content:encoded><![CDATA[<p>Hi,</p>
<p>in Vorbereitung auf den neuen SQL Server 2019 hat MS neue ODBC und OLEDB Treiber zum Download bereitgestellt.</p>
<p>In preparation for the new SQL Server 2019, MS has released new ODBC and OLEDB drivers for download.</p>
<p> </p>
<p>MS Info OLEDB (ADO)<br /><a href="https://docs.microsoft.com/de-de/sql/connect/oledb/oledb-driver-for-sql-server" target="_blank" rel="noopener">https://docs.microsoft.com/de-de/sql/connect/oledb/oledb-driver-for-sql-server</a></p>
<p>Download<br /><a href="https://docs.microsoft.com/en-us/sql/connect/oledb/download-oledb-driver-for-sql-server" target="_blank" rel="noopener">https://docs.microsoft.com/en-us/sql/connect/oledb/download-oledb-driver-for-sql-server</a></p>
<p>Connectionstring Access<br />Provider=MSOLEDBSQL; Server=myServerName\theInstanceName; Database=myDataBase; Trusted_Connection=yes;</p>
<p>------</p>
<p>MS Info ODBC (DAO)<br /><a href="https://docs.microsoft.com/en-us/sql/connect/odbc/microsoft-odbc-driver-for-sql-server" target="_blank" rel="noopener">https://docs.microsoft.com/en-us/sql/connect/odbc/microsoft-odbc-driver-for-sql-server</a></p>
<p>Connectionstring Access<br />ODBC;DRIVER=ODBC Driver 17 for SQL Server; SERVER=myServerName\theInstanceName; DATABASE=myDatabase; Trusted_Connection=yes;</p>
<p>------</p>
<p>ADO / DAO Background Article (de Soto)<br /><a href="https://accessexperts.com/blog/2018/09/11/new-sql-server-odbc-and-oledb-driver/" target="_blank" rel="noopener">https://accessexperts.com/blog/2018/09/11/new-sql-server-odbc-and-oledb-driver/</a></p>
<p>-------------</p>
<p><em><strong>SSMA</strong></em></p>
<p>Download newest SSMA Access Version (2020_Sept_30 Vers: 8.14 - incl. Big Int und Filtered Index)<br /><a href="https://aka.ms/ssmaforaccess" target="_blank" rel="noopener">https://aka.ms/ssmaforaccess</a></p>
<p>Info SSMA - SQL Server Migration Assistant Info - Access<br /><a href="https://docs.microsoft.com/en-us/sql/ssma/sql-server-migration-assistant?view=sql-server-2017" target="_blank" rel="noopener">https://docs.microsoft.com/en-us/sql/ssma/sql-server-migration-assistant?view=sql-server-2017</a></p>
<p>Whats new in SSMA 8.14</p>
<p><a href="https://docs.microsoft.com/en-us/sql/ssma/access/what-s-new-in-ssma-for-access-accesstosql?redirectedfrom=MSDN&amp;view=sql-server-ver15" target="_blank" rel="noopener">https://docs.microsoft.com/en-us/sql/ssma/access/what-s-new-in-ssma-for-access-accesstosql?redirectedfrom=MSDN&amp;view=sql-server-ver15</a></p>
<p><em><strong>If having installed more than one database engine the program may fail</strong></em></p>
<p>mfg</p>
<p>Klaus</p>]]></content:encoded>
								<comments>https://www.insidesql.org/blogs/klausobd/2019/09/03/new-odbc-and-oledb-driver#comments</comments>
			<wfw:commentRss>https://www.insidesql.org/blogs/klausobd/?tempskin=_rss2&#38;disp=comments&#38;p=4094</wfw:commentRss>
		</item>
				<item>
			<title>MS Access VBA 64bit</title>
			<link>https://www.insidesql.org/blogs/klausobd/2019/08/21/ms-access-vba-64bit-diverses</link>
			<pubDate>Wed, 21 Aug 2019 01:00:00 +0000</pubDate>			<dc:creator>klausobd</dc:creator>
			<category domain="main">Sonstiges</category>
<category domain="alt">MSOffice</category>			<guid isPermaLink="false">4093@https://www.insidesql.org/blogs/</guid>
						<description>&lt;p&gt; &lt;/p&gt;
&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;um die Access VBA 64bit Problematik zu vereinfachen, habe ich eine Datenbank &lt;a href=&quot;https://1drv.ms/u/s!Am2T4hGcNbbMiZMoOV7w-OoZUX-oOw?e=TLxuuW&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;hier &lt;/a&gt;online gestellt, die die wichtigsten Funktionen so bereitstellt, dass sie sowohl in Access 32 als auch in Access 64bit funktionieren. Die Datenbank funktioniert in allen Versionen zwischen Access 2010 und Access 2019 (32 und 64bit). &lt;/p&gt;
&lt;p&gt;PS: Das Formular „frm_Font_Symbol_Wingdings“ habe ich mit einem FontSuch VBA „aufgepeppt“, finde ich jetzt ganz praktisch, den Report dazu gibt’s auch …&lt;/p&gt;
&lt;p&gt;Das Formular _&lt;em&gt;frmHlp&lt;/em&gt;_Sysinfo speichert automatisch beim Verlassen die Werte pro User in die tbl_SysInfo….&lt;/p&gt;
&lt;p&gt;----------------------------------------------------------------------------------------------&lt;/p&gt;
&lt;p&gt;To simplify the Access VBA 64bit issue, I&#039;ve put a database online &lt;a href=&quot;https://1drv.ms/u/s!Am2T4hGcNbbMiZMoOV7w-OoZUX-oOw?e=TLxuuW&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;here&lt;/a&gt; that provides the key features to work in Access 32 as well as in Access 64bit. The database works in all versions between Access 2010 and Access 2019 (32 and 64bit).&lt;/p&gt;
&lt;p&gt;PS: I&#039;ve &quot;spiced up&quot; the form &quot;frm_Font_Symbol_Wingdings&quot; with a Fontsearch VBA &quot;, I think now quite practical, the report is also available ...&lt;/p&gt;
&lt;p&gt;The form _frmHlp_Sysinfo automatically saves the values per user in the tbl_SysInfo when exiting.&lt;/p&gt;
&lt;p&gt;mfg Klaus&lt;/p&gt;</description>
			<content:encoded><![CDATA[<p> </p>
<p>Hi,</p>
<p>um die Access VBA 64bit Problematik zu vereinfachen, habe ich eine Datenbank <a href="https://1drv.ms/u/s!Am2T4hGcNbbMiZMoOV7w-OoZUX-oOw?e=TLxuuW" target="_blank" rel="noopener">hier </a>online gestellt, die die wichtigsten Funktionen so bereitstellt, dass sie sowohl in Access 32 als auch in Access 64bit funktionieren. Die Datenbank funktioniert in allen Versionen zwischen Access 2010 und Access 2019 (32 und 64bit). </p>
<p>PS: Das Formular „frm_Font_Symbol_Wingdings“ habe ich mit einem FontSuch VBA „aufgepeppt“, finde ich jetzt ganz praktisch, den Report dazu gibt’s auch …</p>
<p>Das Formular _<em>frmHlp</em>_Sysinfo speichert automatisch beim Verlassen die Werte pro User in die tbl_SysInfo….</p>
<p>----------------------------------------------------------------------------------------------</p>
<p>To simplify the Access VBA 64bit issue, I've put a database online <a href="https://1drv.ms/u/s!Am2T4hGcNbbMiZMoOV7w-OoZUX-oOw?e=TLxuuW" target="_blank" rel="noopener">here</a> that provides the key features to work in Access 32 as well as in Access 64bit. The database works in all versions between Access 2010 and Access 2019 (32 and 64bit).</p>
<p>PS: I've "spiced up" the form "frm_Font_Symbol_Wingdings" with a Fontsearch VBA ", I think now quite practical, the report is also available ...</p>
<p>The form _frmHlp_Sysinfo automatically saves the values per user in the tbl_SysInfo when exiting.</p>
<p>mfg Klaus</p>]]></content:encoded>
								<comments>https://www.insidesql.org/blogs/klausobd/2019/08/21/ms-access-vba-64bit-diverses#comments</comments>
			<wfw:commentRss>https://www.insidesql.org/blogs/klausobd/?tempskin=_rss2&#38;disp=comments&#38;p=4093</wfw:commentRss>
		</item>
				<item>
			<title>Automatic Reconnect from Sql Server BE to MSAccess</title>
			<link>https://www.insidesql.org/blogs/klausobd/2018/10/21/automatic-reconnect-from-sql-server</link>
			<pubDate>Sun, 21 Oct 2018 15:50:00 +0000</pubDate>			<dc:creator>klausobd</dc:creator>
			<category domain="main">Sonstiges</category>			<guid isPermaLink="false">4065@https://www.insidesql.org/blogs/</guid>
						<description>&lt;p&gt;------ english version at the end ------------&lt;/p&gt;
&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;automatisches Reconnect von Access zum SQL Server&lt;/p&gt;
&lt;p&gt;Idee dahinter: Ein automatischer Reconnect wird nur durchgeführt, wenn die als Test-Tabelle definierte Tabelle nicht richtig verbunden ist.&lt;/p&gt;
&lt;p&gt;Der Name der Testtabelle wird in &quot;PropInhalt&quot; von _tblProperty als Text mit dem PropName &quot;prp_SQLCheckTabelle&quot; gespeichert&lt;/p&gt;
&lt;p&gt;Diese Demo zeigt, wie man sich nach der korrekten Einrichtung einfach von sql Server wieder verbindet:&lt;br /&gt;Diese Demo enthält:&lt;/p&gt;
&lt;p&gt;- ReadMe Auto Relink to SQLServer.txt (diese Datei)&lt;/p&gt;
&lt;p&gt;- TestConnect_SQL.mdb acc2000 Beispiel-MDB-Datei (gespeichert von 32 Bit 2013 Access accdb)&lt;/p&gt;
&lt;p&gt;- crea_TestConnect.sql.txt Ein automatisch erstelltes SQL-Skript zum Erstellen einer Beispiel-Backend-MDF-Datei&lt;/p&gt;
&lt;p&gt;WICHTIG: Bitte bearbeiten die&lt;/p&gt;
&lt;p&gt;( NAME = N&#039;TestConnect&#039;, FILENAME = N&#039;C:\SQL_2017_Ex\Data\TestConnect.mdf&#039; , SIZE = 73728KB , MAXSIZE = UNLIMITED, FILEGROWTH = 65536KB )&lt;br /&gt;LOG ON &lt;br /&gt;( NAME = N&#039;TestConnect_log&#039;, FILENAME = N&#039;C:\SQL_2017_Ex\Data\TestConnect_log.ldf&#039; , SIZE = 8192KB , MAXSIZE = 2048GB , FILEGROWTH = 65536KB )&lt;br /&gt;GO&lt;/p&gt;
&lt;p&gt;Zeilen des Scripts passend zu der bei Ihnen verwendeten Systemkonfiguration.&lt;/p&gt;
&lt;p&gt;Ich habe kein Backup verwendet, da mein System SQL Server Express 2017 ist und eine Wiederherstellung nicht abwärtskompatibel ist (soweit ich weiß)&lt;br /&gt;aber dieses Skript sollte in fast jedem SQL Server ab 5 arbeiten ??&lt;/p&gt;
&lt;p&gt;--------&lt;/p&gt;
&lt;p&gt;Die folgenden Dinge müssen im Voraus festgelegt werden:&lt;/p&gt;
&lt;p&gt;Erstellen Sie das Test-Back-End mit dem Skript.&lt;/p&gt;
&lt;p&gt;MS Access:&lt;br /&gt;Öffnen Sie zum ersten Mal die mdb mit Shift, oder Sie erhalten alle möglichen unangenehmen Fehlermeldungen.&lt;/p&gt;
&lt;p&gt;Verbindungszeichenfolge&lt;br /&gt;Für eine einfache Handhabung (sobald es eingerichtet ist) wird die verwendete Verbindungszeichenfolge gesplittet gespeichert.&lt;br /&gt;Der Hauptteil ist in der Tabelle &quot;Acc_SQL_Server&quot; gespeichert&lt;br /&gt;ACHTUNG - Es ist sehr wichtig, dass das letzte Zeichen immer ein &quot;;&quot; ist, wie dort gezeigt ...&lt;/p&gt;
&lt;p&gt;Da ich die private Funktion atcnames (1) &amp;lt;Benutzername&amp;gt; oder atcnames (2) &amp;lt;pcname&amp;gt; aus Modul mdlVerbindeSQL verwende, kann ich &quot;meinen eigenen&quot; Server finden, der im Feld &quot;Server_OBD&quot; gespeichert ist, ansonsten wird der Kundenserver, Feld &quot;Server_Kunde&quot; verwendet.&lt;br /&gt;Feld &quot;Server&quot; ist ein Ausgabefeld, in dem der tatsächlich verwendete Server automatisch gespeichert wird.&lt;/p&gt;
&lt;p&gt;Ein App_Name wird in VBA über APPName erstellt&lt;br /&gt;fAppName = &quot;APP =&quot; &amp;amp; atCNames (1) &amp;amp; &quot;\&quot; &amp;amp; atCNames (2) &amp;amp; &quot;\&quot; &amp;amp; Nz (DAOARRAY1 (5, 0)) &amp;lt;wobei 5 = das Feld Appname&amp;gt;&lt;br /&gt;Loginname wird von diesem neu geschrieben&lt;br /&gt;App_Name kann im SQL Server mittels &quot;SELECT App_Name ()&quot; verwendet werden&lt;/p&gt;
&lt;p&gt;Last but not least: &quot;ConnectionstringT1&quot;, die den ersten Teil der Verbindungszeichenfolge enthält&lt;/p&gt;
&lt;p&gt;ODBC;Driver={SQL Server Native Client 11.0};Trusted_Connection=Yes;&lt;/p&gt;
&lt;p&gt;Natürlich muss man diesen mit dem von Ihnen verwendeten Teil ersetzen ...&lt;/p&gt;
&lt;p&gt;Der letzte Teil der Verbindungszeichenfolge ist der Datenbankname und die zu verbindende Tabelle.&lt;/p&gt;
&lt;p&gt;Sie finden sie in der Tabelle &quot;Acc_SQL_tblVerknüpfungstabellen&quot;&lt;/p&gt;
&lt;p&gt;Um eine Verbindung von verschiedenen SQL-Datenbank-Backends herstellen zu können, wird der Datenbankname in dieser Tabelle gespeichert.&lt;/p&gt;
&lt;p&gt;Aus praktischen Gründen wird die Eigenschaft &quot;prp_Standard_DBName&quot; in der Tabelle _tblProperty in &quot;PropInhalt&quot; gespeichert.&lt;br /&gt;Es enthält den Namen der Haupt-Back-End-Datenbank.&lt;br /&gt;Dies wird verwendet für die&lt;/p&gt;
&lt;p&gt;Funktion GetConnectionstring ()&lt;/p&gt;
&lt;p&gt;Das finden Sie im Modul &quot;mdlSonstiges4&quot; Es bringt Ihnen den kompletten Verbindungsstrang unabhängig von einer verwendeten Tabelle.&lt;br /&gt; (aber deshalb vielleicht in einigen Fällen fehlerhaft). Ich persönlich benutze diese Funktion ziemlich oft.&lt;/p&gt;
&lt;p&gt;Die Tabelle &quot;Acc_SQL_tblVerknüpfungstabellen&quot;&lt;/p&gt;
&lt;p&gt;Um MS zu zitieren: &amp;gt;&amp;gt;&amp;gt; You can use CREATE INDEX to create a pseudo index on a linked table in an ODBC data source, such as Microsoft® SQL Server™, that does not already have an index. You do not need permission or access to the remote server to create a pseudo index, and the remote database is unaware of and unaffected by the pseudo index. You use the same syntax for both linked and native tables. Creating a pseudo-index on a table that would ordinarily be read-only can be especially useful. &amp;lt;&amp;lt;&amp;lt;&lt;/p&gt;
&lt;p&gt;tblName - Name wie in MSAccess angezeigt&lt;br /&gt;tblName_Org - Ursprünglicher Name, der im SQL Server (Tabelle oder View) verwendet wird&lt;br /&gt;jn - Wenn nicht Ja angekreuzt ist, wird die Tabelle überhaupt nicht verknüpft&lt;br /&gt;Indexfkt - Indexanweisung (wie oben erwähnt) - Beispiel:&lt;br /&gt;CREATE UNIQUE INDEX A_Detail_Prim ON qry_A_Details (DE_ID) &lt;br /&gt;ID - automatisch erstellte ID-Nummer als PK&lt;br /&gt;IDSort - Reihenfolge, in der die Verbindung erstellt wird (optional, wenn 0, dann wird ID verwendet)&lt;br /&gt;Bemerkungen - Bemerkungen (optional / nicht verwendet)&lt;br /&gt;DBName - DBName der Backend-Datenbank, in der die Tabelle gespeichert ist -&lt;br /&gt;Wichtig: Der String &amp;gt;DATABASE = &amp;lt;name&amp;gt;; muss mit einem &quot;;&quot; enden, da als Teil von Connectionstring verwendet&lt;/p&gt;
&lt;p&gt;Die Tabelle tbl_Connectionstring enthält als ID 1 nur den erzeugten ConnectionString (wie in GetConnectionString())&lt;br /&gt;Und wird bei jedem Reconnect erstellt (wenn Tabellen geändert wurden oder das Makro Reconnect_BE (SQL)_Tables verwendet wurde)&lt;/p&gt;
&lt;p&gt;Wenn alle Einstellungen korrekt sind, schließen und öffnen Sie die Datenbank erneut.&lt;/p&gt;
&lt;p&gt;Das Autoexec-Makro führt nur die Funktion aus dem Modul mdl_Autoexec aus&lt;/p&gt;
&lt;p&gt;Funktion f_Autoexec ()&lt;br /&gt;checkconnectSQL&lt;br /&gt;MsgBox &quot;Tabellen sind korrekt verbunden&quot;&lt;br /&gt;Ende Funktion&lt;/p&gt;
&lt;p&gt;Mit dem Makro &quot;Reconnect_BE (SQL) _Tables&quot; erzwingen Sie eine erneute Verbindung (auch wenn alles in Ordnung zu sein scheint)&lt;br /&gt;zum Beispiel, wenn Sie die BE-Tabellen geändert haben ...&lt;/p&gt;
&lt;p&gt;Es führt die Funktion =DatenMDBWechselSQL() im mdlVerbindeSQL-Modul aus.&lt;/p&gt;
&lt;p&gt;All das &quot;Heavy Lifting&quot; erfolgt im mdlVerbindeSQL-Modul, mdlSonstiges4 und mdlSonstigesJasNein enthalten lediglich mehrere Helferfunktionen.&lt;br /&gt;Ich verwende meistens die Funktion ArrFill_DAO_Acc, die eine Tabelle (Recordset / SQL String) in ein Array einfügt.&lt;br /&gt;Kopieren Sie einfach die Kommentarzeilen am Anfang der Funktion (Dim ArrFill ... bis End If) in den eigentlichen Code und entfernen Sie dort die Kommentarzeichen ...&lt;/p&gt;
&lt;p&gt;Das vollständige Beispiel &lt;a href=&quot;https://onedrive.live.com/?id=CCB6359C11E2936D%2131173&amp;amp;cid=CCB6359C11E2936D&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;finden Sie hier&lt;/a&gt; im Unterverzeichnis &amp;gt;SQL_Server Auto Relink tables queries to ACCESS&amp;lt;&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;
&lt;p&gt;-------------------------------------------------------------------------------------------------------------------------&lt;/p&gt;
&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;Automatic Reconnect from Sql Server BE to MSAccess&lt;/p&gt;
&lt;p&gt;Idea: Only reconnect again, if one &amp;gt;test table&amp;lt; is not connected properly (unsuccessful open test)&lt;br /&gt;The name of the test table is stored in &quot;PropInhalt&quot; of _tblProperty as Property with the PropName &quot;prp_SQLCheckTabelle&quot;&lt;/p&gt;
&lt;p&gt;This demo will show how to easily reconnect from sql server, once set up properly:&lt;br /&gt;This demo contains:&lt;/p&gt;
&lt;p&gt;- ReadMe Auto Relink to SQLServer.txt (this file)&lt;/p&gt;
&lt;p&gt;- TestConnect_SQL.mdb acc2000 Sample mdb file (saved from 32 bit 2013 Access accdb)&lt;/p&gt;
&lt;p&gt;- crea_TestConnect.sql.txt An auto-created SQL script for creating a sample backend mdf-file&lt;/p&gt;
&lt;p&gt;IMPORTANT: Pls edit the &lt;br /&gt;( NAME = N&#039;TestConnect&#039;, FILENAME = N&#039;C:\SQL_2017_Ex\Data\TestConnect.mdf&#039; , SIZE = 73728KB , MAXSIZE = UNLIMITED, FILEGROWTH = 65536KB )&lt;br /&gt;LOG ON &lt;br /&gt;( NAME = N&#039;TestConnect_log&#039;, FILENAME = N&#039;C:\SQL_2017_Ex\Data\TestConnect_log.ldf&#039; , SIZE = 8192KB , MAXSIZE = 2048GB , FILEGROWTH = 65536KB )&lt;br /&gt;GO&lt;br /&gt;lines according to your system&lt;/p&gt;
&lt;p&gt;I didn&#039;t use a backup, because my system is SQL Server Express 2017 and a restore is not backwards compatible (as far as i know)&lt;br /&gt;but this script should work on nearly each mdf starting from 8a ??&lt;/p&gt;
&lt;p&gt;--------&lt;/p&gt;
&lt;p&gt;The following things have to be set up in advance:&lt;/p&gt;
&lt;p&gt;Create the Test Backend with the script.&lt;/p&gt;
&lt;p&gt;MS-Access:&lt;br /&gt;First time open the mdb with shift, or you&#039;ll get all sorts of nasty errormessages.&lt;/p&gt;
&lt;p&gt;Connection string&lt;br /&gt;For easy handling (once it is set up) the used connection-string is split stored.&lt;br /&gt;The main part is stored within the table &quot;Acc_SQL_Server&quot;&lt;br /&gt;PAY ATTENTION - It is most important that the last char always is a &quot;;&quot; as shown there ...&lt;/p&gt;
&lt;p&gt;As i use the private function atcnames(1) &amp;lt;username&amp;gt; or atcnames(2) &amp;lt;pcname&amp;gt; from module mdlVerbindeSQL i can detect &quot;my own&quot; server which is stored in field &quot;Server_OBD&quot; otherwise the customer server, field &quot;Server_Kunde&quot; is used.&lt;br /&gt;Field Server is an output field, it stores the actual used server automatically.&lt;/p&gt;
&lt;p&gt;An App_Name is created in VBA via APPName &lt;br /&gt;fAppName = &quot;APP=&quot; &amp;amp; atCNames(1) &amp;amp; &quot;\&quot; &amp;amp; atCNames(2) &amp;amp; &quot;\&quot; &amp;amp; Nz(DAOARRAY1(5, 0)) &amp;lt;where 5 = the field Appname&amp;gt;&lt;br /&gt;Loginname is rewritten from that&lt;br /&gt;App_Name can be used in SQLServer &quot;SELECT App_Name()&quot;&lt;/p&gt;
&lt;p&gt;Last but not least &quot;ConnectionstringT1&quot; which contains the first part of the connectionstring&lt;/p&gt;
&lt;p&gt;ODBC;Driver={SQL Server Native Client 11.0};Trusted_Connection=Yes;&lt;/p&gt;
&lt;p&gt;Of course you have to replace it whith the connectionstring-part you use ...&lt;/p&gt;
&lt;p&gt;The last part of the connection-string is the database-name and the table to connect.&lt;/p&gt;
&lt;p&gt;You&#039;ll find them in table &quot;Acc_SQL_tblVerknuepfungstabellen&quot;&lt;/p&gt;
&lt;p&gt;For beeing able to connect from varius SQL database backends, the database-name is stored within that table.&lt;/p&gt;
&lt;p&gt;For convenience the Property &quot;prp_Standard_DBName&quot; of the table _tblProperty is stored in &quot;PropInhalt&quot; &lt;br /&gt;It contains the Main Backend Database name.&lt;br /&gt;This is used for&lt;/p&gt;
&lt;p&gt;function GetConnectionstring()&lt;/p&gt;
&lt;p&gt;Which you&#039;ll find in modul &quot;mdlSonstiges4&quot; It brings you the complete connectionstring independant of a used table.&lt;br /&gt;(but therefore maybe incorrect in some cases). I personally use that function quite often.&lt;/p&gt;
&lt;p&gt;The table &quot;Acc_SQL_tblVerknuepfungstabellen&quot;&lt;/p&gt;
&lt;p&gt;To quote MS: &amp;gt;&amp;gt;&amp;gt; You can use CREATE INDEX to create a pseudo index on a linked table in an ODBC data source, such as Microsoft® SQL Server™, that does not already have an index. You do not need permission or access to the remote server to create a pseudo index, and the remote database is unaware of and unaffected by the pseudo index. You use the same syntax for both linked and native tables. Creating a pseudo-index on a table that would ordinarily be read-only can be especially useful. &amp;lt;&amp;lt;&amp;lt;&lt;/p&gt;
&lt;p&gt;tblName - Name as shown in MSAccess&lt;br /&gt;tblName_Org - Original name, used in SQL Server (table or view)&lt;br /&gt;jn - If not Yes, table is not linked at all&lt;br /&gt;Indexfkt - Index statement (as mentioned above) - Sample:&lt;br /&gt;CREATE UNIQUE INDEX A_Detail_Prim ON qry_A_Details (DE_ID) &lt;br /&gt;ID - autocreated ID number as PK&lt;br /&gt;IDSort - order in which the connection is created (optional, if 0, then ID is used)&lt;br /&gt;Bemerkungen - remarks (optional / not used)&lt;br /&gt;DBName - DBName of the backend database where the table is stored - &lt;br /&gt;Important: String &amp;gt;DATABASE = &amp;lt;name&amp;gt;;&amp;lt; Ending with ; - as used as part of Connectionstring&lt;/p&gt;
&lt;p&gt;The table tbl_Connectionstring as ID 1 just contains the the created ConnectionString (as in GetConnectionString() )&lt;br /&gt;And is created on each connect (when tables changed)&lt;/p&gt;
&lt;p&gt;If all settings are correct close and reopen the database.&lt;/p&gt;
&lt;p&gt;The Autoexec Macro just execs the function&lt;/p&gt;
&lt;p&gt;Function f_Autoexec()&lt;br /&gt;checkconnectSQL&lt;br /&gt;MsgBox &quot;Tables are connected correctly&quot;&lt;br /&gt;End Function&lt;/p&gt;
&lt;p&gt;found in Module mdl_Autoexec&lt;/p&gt;
&lt;p&gt;You force a reconnect (even if everything seems OK) with macro &quot;Reconnect_BE (SQL)_Tables&quot;&lt;br /&gt;for example if you changed the BE-tables ...&lt;/p&gt;
&lt;p&gt;It execs the function =DatenMDBWechselSQL() found in mdlVerbindeSQL module&lt;/p&gt;
&lt;p&gt;All the &quot;heavy lifting&quot; is done in mdlVerbindeSQL module, mdlSonstiges4 and mdlSonstigesJasNein just contain several helper funktions.&lt;br /&gt;I mostly use the function ArrFill_DAO_Acc which puts a table (recordset / SQL String) into an array.&lt;br /&gt;Just copy the comment lines at the beginning of the function (Dim ArrFill... to End If) in your actual code and uncomment them there...&lt;/p&gt;
&lt;p&gt;You&#039;ll find the complete &lt;a href=&quot;https://onedrive.live.com/?id=CCB6359C11E2936D%2131173&amp;amp;cid=CCB6359C11E2936D&quot; target=&quot;_blank&quot; rel=&quot;noopener&quot;&gt;sample here&lt;/a&gt; in Subdirectory &amp;gt;SQL_Server Auto Relink tables queries to ACCESS&amp;lt;&lt;br /&gt;&lt;br /&gt;&lt;/p&gt;</description>
			<content:encoded><![CDATA[<p>------ english version at the end ------------</p>
<p>Hi,</p>
<p>automatisches Reconnect von Access zum SQL Server</p>
<p>Idee dahinter: Ein automatischer Reconnect wird nur durchgeführt, wenn die als Test-Tabelle definierte Tabelle nicht richtig verbunden ist.</p>
<p>Der Name der Testtabelle wird in "PropInhalt" von _tblProperty als Text mit dem PropName "prp_SQLCheckTabelle" gespeichert</p>
<p>Diese Demo zeigt, wie man sich nach der korrekten Einrichtung einfach von sql Server wieder verbindet:<br />Diese Demo enthält:</p>
<p>- ReadMe Auto Relink to SQLServer.txt (diese Datei)</p>
<p>- TestConnect_SQL.mdb acc2000 Beispiel-MDB-Datei (gespeichert von 32 Bit 2013 Access accdb)</p>
<p>- crea_TestConnect.sql.txt Ein automatisch erstelltes SQL-Skript zum Erstellen einer Beispiel-Backend-MDF-Datei</p>
<p>WICHTIG: Bitte bearbeiten die</p>
<p>( NAME = N'TestConnect', FILENAME = N'C:\SQL_2017_Ex\Data\TestConnect.mdf' , SIZE = 73728KB , MAXSIZE = UNLIMITED, FILEGROWTH = 65536KB )<br />LOG ON <br />( NAME = N'TestConnect_log', FILENAME = N'C:\SQL_2017_Ex\Data\TestConnect_log.ldf' , SIZE = 8192KB , MAXSIZE = 2048GB , FILEGROWTH = 65536KB )<br />GO</p>
<p>Zeilen des Scripts passend zu der bei Ihnen verwendeten Systemkonfiguration.</p>
<p>Ich habe kein Backup verwendet, da mein System SQL Server Express 2017 ist und eine Wiederherstellung nicht abwärtskompatibel ist (soweit ich weiß)<br />aber dieses Skript sollte in fast jedem SQL Server ab 5 arbeiten ??</p>
<p>--------</p>
<p>Die folgenden Dinge müssen im Voraus festgelegt werden:</p>
<p>Erstellen Sie das Test-Back-End mit dem Skript.</p>
<p>MS Access:<br />Öffnen Sie zum ersten Mal die mdb mit Shift, oder Sie erhalten alle möglichen unangenehmen Fehlermeldungen.</p>
<p>Verbindungszeichenfolge<br />Für eine einfache Handhabung (sobald es eingerichtet ist) wird die verwendete Verbindungszeichenfolge gesplittet gespeichert.<br />Der Hauptteil ist in der Tabelle "Acc_SQL_Server" gespeichert<br />ACHTUNG - Es ist sehr wichtig, dass das letzte Zeichen immer ein ";" ist, wie dort gezeigt ...</p>
<p>Da ich die private Funktion atcnames (1) &lt;Benutzername&gt; oder atcnames (2) &lt;pcname&gt; aus Modul mdlVerbindeSQL verwende, kann ich "meinen eigenen" Server finden, der im Feld "Server_OBD" gespeichert ist, ansonsten wird der Kundenserver, Feld "Server_Kunde" verwendet.<br />Feld "Server" ist ein Ausgabefeld, in dem der tatsächlich verwendete Server automatisch gespeichert wird.</p>
<p>Ein App_Name wird in VBA über APPName erstellt<br />fAppName = "APP =" &amp; atCNames (1) &amp; "\" &amp; atCNames (2) &amp; "\" &amp; Nz (DAOARRAY1 (5, 0)) &lt;wobei 5 = das Feld Appname&gt;<br />Loginname wird von diesem neu geschrieben<br />App_Name kann im SQL Server mittels "SELECT App_Name ()" verwendet werden</p>
<p>Last but not least: "ConnectionstringT1", die den ersten Teil der Verbindungszeichenfolge enthält</p>
<p>ODBC;Driver={SQL Server Native Client 11.0};Trusted_Connection=Yes;</p>
<p>Natürlich muss man diesen mit dem von Ihnen verwendeten Teil ersetzen ...</p>
<p>Der letzte Teil der Verbindungszeichenfolge ist der Datenbankname und die zu verbindende Tabelle.</p>
<p>Sie finden sie in der Tabelle "Acc_SQL_tblVerknüpfungstabellen"</p>
<p>Um eine Verbindung von verschiedenen SQL-Datenbank-Backends herstellen zu können, wird der Datenbankname in dieser Tabelle gespeichert.</p>
<p>Aus praktischen Gründen wird die Eigenschaft "prp_Standard_DBName" in der Tabelle _tblProperty in "PropInhalt" gespeichert.<br />Es enthält den Namen der Haupt-Back-End-Datenbank.<br />Dies wird verwendet für die</p>
<p>Funktion GetConnectionstring ()</p>
<p>Das finden Sie im Modul "mdlSonstiges4" Es bringt Ihnen den kompletten Verbindungsstrang unabhängig von einer verwendeten Tabelle.<br /> (aber deshalb vielleicht in einigen Fällen fehlerhaft). Ich persönlich benutze diese Funktion ziemlich oft.</p>
<p>Die Tabelle "Acc_SQL_tblVerknüpfungstabellen"</p>
<p>Um MS zu zitieren: &gt;&gt;&gt; You can use CREATE INDEX to create a pseudo index on a linked table in an ODBC data source, such as Microsoft® SQL Server™, that does not already have an index. You do not need permission or access to the remote server to create a pseudo index, and the remote database is unaware of and unaffected by the pseudo index. You use the same syntax for both linked and native tables. Creating a pseudo-index on a table that would ordinarily be read-only can be especially useful. &lt;&lt;&lt;</p>
<p>tblName - Name wie in MSAccess angezeigt<br />tblName_Org - Ursprünglicher Name, der im SQL Server (Tabelle oder View) verwendet wird<br />jn - Wenn nicht Ja angekreuzt ist, wird die Tabelle überhaupt nicht verknüpft<br />Indexfkt - Indexanweisung (wie oben erwähnt) - Beispiel:<br />CREATE UNIQUE INDEX A_Detail_Prim ON qry_A_Details (DE_ID) <br />ID - automatisch erstellte ID-Nummer als PK<br />IDSort - Reihenfolge, in der die Verbindung erstellt wird (optional, wenn 0, dann wird ID verwendet)<br />Bemerkungen - Bemerkungen (optional / nicht verwendet)<br />DBName - DBName der Backend-Datenbank, in der die Tabelle gespeichert ist -<br />Wichtig: Der String &gt;DATABASE = &lt;name&gt;; muss mit einem ";" enden, da als Teil von Connectionstring verwendet</p>
<p>Die Tabelle tbl_Connectionstring enthält als ID 1 nur den erzeugten ConnectionString (wie in GetConnectionString())<br />Und wird bei jedem Reconnect erstellt (wenn Tabellen geändert wurden oder das Makro Reconnect_BE (SQL)_Tables verwendet wurde)</p>
<p>Wenn alle Einstellungen korrekt sind, schließen und öffnen Sie die Datenbank erneut.</p>
<p>Das Autoexec-Makro führt nur die Funktion aus dem Modul mdl_Autoexec aus</p>
<p>Funktion f_Autoexec ()<br />checkconnectSQL<br />MsgBox "Tabellen sind korrekt verbunden"<br />Ende Funktion</p>
<p>Mit dem Makro "Reconnect_BE (SQL) _Tables" erzwingen Sie eine erneute Verbindung (auch wenn alles in Ordnung zu sein scheint)<br />zum Beispiel, wenn Sie die BE-Tabellen geändert haben ...</p>
<p>Es führt die Funktion =DatenMDBWechselSQL() im mdlVerbindeSQL-Modul aus.</p>
<p>All das "Heavy Lifting" erfolgt im mdlVerbindeSQL-Modul, mdlSonstiges4 und mdlSonstigesJasNein enthalten lediglich mehrere Helferfunktionen.<br />Ich verwende meistens die Funktion ArrFill_DAO_Acc, die eine Tabelle (Recordset / SQL String) in ein Array einfügt.<br />Kopieren Sie einfach die Kommentarzeilen am Anfang der Funktion (Dim ArrFill ... bis End If) in den eigentlichen Code und entfernen Sie dort die Kommentarzeichen ...</p>
<p>Das vollständige Beispiel <a href="https://onedrive.live.com/?id=CCB6359C11E2936D%2131173&amp;cid=CCB6359C11E2936D" target="_blank" rel="noopener">finden Sie hier</a> im Unterverzeichnis &gt;SQL_Server Auto Relink tables queries to ACCESS&lt;<br /><br /></p>
<p>-------------------------------------------------------------------------------------------------------------------------</p>
<p>Hi,</p>
<p>Automatic Reconnect from Sql Server BE to MSAccess</p>
<p>Idea: Only reconnect again, if one &gt;test table&lt; is not connected properly (unsuccessful open test)<br />The name of the test table is stored in "PropInhalt" of _tblProperty as Property with the PropName "prp_SQLCheckTabelle"</p>
<p>This demo will show how to easily reconnect from sql server, once set up properly:<br />This demo contains:</p>
<p>- ReadMe Auto Relink to SQLServer.txt (this file)</p>
<p>- TestConnect_SQL.mdb acc2000 Sample mdb file (saved from 32 bit 2013 Access accdb)</p>
<p>- crea_TestConnect.sql.txt An auto-created SQL script for creating a sample backend mdf-file</p>
<p>IMPORTANT: Pls edit the <br />( NAME = N'TestConnect', FILENAME = N'C:\SQL_2017_Ex\Data\TestConnect.mdf' , SIZE = 73728KB , MAXSIZE = UNLIMITED, FILEGROWTH = 65536KB )<br />LOG ON <br />( NAME = N'TestConnect_log', FILENAME = N'C:\SQL_2017_Ex\Data\TestConnect_log.ldf' , SIZE = 8192KB , MAXSIZE = 2048GB , FILEGROWTH = 65536KB )<br />GO<br />lines according to your system</p>
<p>I didn't use a backup, because my system is SQL Server Express 2017 and a restore is not backwards compatible (as far as i know)<br />but this script should work on nearly each mdf starting from 8a ??</p>
<p>--------</p>
<p>The following things have to be set up in advance:</p>
<p>Create the Test Backend with the script.</p>
<p>MS-Access:<br />First time open the mdb with shift, or you'll get all sorts of nasty errormessages.</p>
<p>Connection string<br />For easy handling (once it is set up) the used connection-string is split stored.<br />The main part is stored within the table "Acc_SQL_Server"<br />PAY ATTENTION - It is most important that the last char always is a ";" as shown there ...</p>
<p>As i use the private function atcnames(1) &lt;username&gt; or atcnames(2) &lt;pcname&gt; from module mdlVerbindeSQL i can detect "my own" server which is stored in field "Server_OBD" otherwise the customer server, field "Server_Kunde" is used.<br />Field Server is an output field, it stores the actual used server automatically.</p>
<p>An App_Name is created in VBA via APPName <br />fAppName = "APP=" &amp; atCNames(1) &amp; "\" &amp; atCNames(2) &amp; "\" &amp; Nz(DAOARRAY1(5, 0)) &lt;where 5 = the field Appname&gt;<br />Loginname is rewritten from that<br />App_Name can be used in SQLServer "SELECT App_Name()"</p>
<p>Last but not least "ConnectionstringT1" which contains the first part of the connectionstring</p>
<p>ODBC;Driver={SQL Server Native Client 11.0};Trusted_Connection=Yes;</p>
<p>Of course you have to replace it whith the connectionstring-part you use ...</p>
<p>The last part of the connection-string is the database-name and the table to connect.</p>
<p>You'll find them in table "Acc_SQL_tblVerknuepfungstabellen"</p>
<p>For beeing able to connect from varius SQL database backends, the database-name is stored within that table.</p>
<p>For convenience the Property "prp_Standard_DBName" of the table _tblProperty is stored in "PropInhalt" <br />It contains the Main Backend Database name.<br />This is used for</p>
<p>function GetConnectionstring()</p>
<p>Which you'll find in modul "mdlSonstiges4" It brings you the complete connectionstring independant of a used table.<br />(but therefore maybe incorrect in some cases). I personally use that function quite often.</p>
<p>The table "Acc_SQL_tblVerknuepfungstabellen"</p>
<p>To quote MS: &gt;&gt;&gt; You can use CREATE INDEX to create a pseudo index on a linked table in an ODBC data source, such as Microsoft® SQL Server™, that does not already have an index. You do not need permission or access to the remote server to create a pseudo index, and the remote database is unaware of and unaffected by the pseudo index. You use the same syntax for both linked and native tables. Creating a pseudo-index on a table that would ordinarily be read-only can be especially useful. &lt;&lt;&lt;</p>
<p>tblName - Name as shown in MSAccess<br />tblName_Org - Original name, used in SQL Server (table or view)<br />jn - If not Yes, table is not linked at all<br />Indexfkt - Index statement (as mentioned above) - Sample:<br />CREATE UNIQUE INDEX A_Detail_Prim ON qry_A_Details (DE_ID) <br />ID - autocreated ID number as PK<br />IDSort - order in which the connection is created (optional, if 0, then ID is used)<br />Bemerkungen - remarks (optional / not used)<br />DBName - DBName of the backend database where the table is stored - <br />Important: String &gt;DATABASE = &lt;name&gt;;&lt; Ending with ; - as used as part of Connectionstring</p>
<p>The table tbl_Connectionstring as ID 1 just contains the the created ConnectionString (as in GetConnectionString() )<br />And is created on each connect (when tables changed)</p>
<p>If all settings are correct close and reopen the database.</p>
<p>The Autoexec Macro just execs the function</p>
<p>Function f_Autoexec()<br />checkconnectSQL<br />MsgBox "Tables are connected correctly"<br />End Function</p>
<p>found in Module mdl_Autoexec</p>
<p>You force a reconnect (even if everything seems OK) with macro "Reconnect_BE (SQL)_Tables"<br />for example if you changed the BE-tables ...</p>
<p>It execs the function =DatenMDBWechselSQL() found in mdlVerbindeSQL module</p>
<p>All the "heavy lifting" is done in mdlVerbindeSQL module, mdlSonstiges4 and mdlSonstigesJasNein just contain several helper funktions.<br />I mostly use the function ArrFill_DAO_Acc which puts a table (recordset / SQL String) into an array.<br />Just copy the comment lines at the beginning of the function (Dim ArrFill... to End If) in your actual code and uncomment them there...</p>
<p>You'll find the complete <a href="https://onedrive.live.com/?id=CCB6359C11E2936D%2131173&amp;cid=CCB6359C11E2936D" target="_blank" rel="noopener">sample here</a> in Subdirectory &gt;SQL_Server Auto Relink tables queries to ACCESS&lt;<br /><br /></p>]]></content:encoded>
								<comments>https://www.insidesql.org/blogs/klausobd/2018/10/21/automatic-reconnect-from-sql-server#comments</comments>
			<wfw:commentRss>https://www.insidesql.org/blogs/klausobd/?tempskin=_rss2&#38;disp=comments&#38;p=4065</wfw:commentRss>
		</item>
			</channel>
</rss>
