Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi MSSQL - wie noch in Zukunft drauf zugreifen. (https://www.delphipraxis.net/188741-mssql-wie-noch-zukunft-drauf-zugreifen.html)

generic 1. Apr 2016 16:14

Datenbank: MSSQL • Version: 2012 • Zugriff über: ?

MSSQL - wie noch in Zukunft drauf zugreifen.
 
Hallo DP,

wie greift man zukünftig auf den Microsoft SQL-Server 2012 oder später zu?

Ich habe paar alte Projekte, welche via dbGo -> TAdoConnection -> OLEDB Treiber zugreifen.

Die OLEDB Treiber werden allerdings aber 2012 nicht mehr gewünscht.
Quelle: https://msdn.microsoft.com/en-us/lib...(v=sql.1).aspx
Zitat:

OLEDB - The OLE DB provider will not be included after SQL Server 2012.
Zitat:

ADO - The ADO SQL driver has a direct dependency on the OLE DB provider. As such, it will not be supported after SQL Server 2012
Hinzu kommt das die ADO (MDAC / WDAC) Technologie auch langfristig den Bach runter geht.
Quelle: https://msdn.microsoft.com/en-us/lib...(v=vs.85).aspx

Somit entfällt die Nutzung von dbGO.

Jetzt ab ich mal in die Seattle Feature Matrix geschaut.

dbExpress:
dbExpress server connectivity to Microsoft SQL Server® 2008, 2005, and 2000

Kein Server nach 2000 :-(

dbExpress ODBC Driver
Würde theoretisch gehen, aber mein Kunde hat leider nur die Prof. Version von Delphi.

FireDac SQL Server
Hier steht leider keine Versionsnummer dran.
Nur gegen Aufpreis in Delphi Pro.

Kann Firedac auch ODBC?

ODBC ist aktuell der empfohlene Zugriffsweg auf den SQLServer 2012 oder höher.

Gibt es noch alternativen?



Update:
Habe gerade das hier noch gefunden - das hilft erst mal:
http://docwiki.embarcadero.com/RADSt...rver_(FireDAC)

Bernhard Geyer 1. Apr 2016 16:27

AW: MSSQL - wie noch in Zukunft drauf zugreifen.
 
Zugriff über ADO wird noch lange gehen. Man muss nur den Verwendete Client wechseln. Aktuell wäre der "Native Client" zu wählen. Der wird schon noch ein paar Jahre "halten".
Ansonsten aussitzen und sehen wie MS alle 2-3 Jahre eine neue "Die Zukunftstechnik" propagiert und dann wieder einschlafen lässt.

Bambini 1. Apr 2016 16:30

AW: MSSQL - wie noch in Zukunft drauf zugreifen.
 
Zitat:

Zitat von generic (Beitrag 1334467)
Somit entfällt die Nutzung von dbGO.

Es kommt nach SQL 2012 kein neuer ADO/OLE DB Treiber mehr. Der alte Treiber wird vom Betriebssystem - auch von Windows 10 - noch mit installiert.
Nutzt man keine spezifischen SQL Server Funktionen oder neuen Feldtypen, kann man problemlos dbGo auch mit SQL 2014 nutzen.

Zitat:

Zitat von generic (Beitrag 1334467)
dbExpress:
dbExpress server connectivity to Microsoft SQL Server® 2008, 2005, and 2000

Das ist wohl seit dem Einkauf von FireDac - deprecated.
Teilt also bald das Schicksal mit der BDE.

Lemmy 1. Apr 2016 16:37

AW: MSSQL - wie noch in Zukunft drauf zugreifen.
 
Hi,

entweder Firedac oder die Komponenten von DevArt.

Grüße

jaenicke 1. Apr 2016 20:37

AW: MSSQL - wie noch in Zukunft drauf zugreifen.
 
Ich kann FireDAC nur empfehlen. Es ist sehr schnell und unterstützt sehr viele Funktionen.

Wir haben allerdings auch die Enterprise Edition inklusive Wartung. Nur für FireDAC lohnt sich das allerdings nicht unbedingt.

p80286 2. Apr 2016 08:06

AW: MSSQL - wie noch in Zukunft drauf zugreifen.
 
Zitat:

Zitat von Bernhard Geyer (Beitrag 1334468)
Ansonsten aussitzen und sehen wie MS alle 2-3 Jahre eine neue "Die Zukunftstechnik" propagiert und dann wieder einschlafen lässt.

Oder wiederbelebt (ODBC)

Gruß
K-H

generic 4. Apr 2016 07:48

AW: MSSQL - wie noch in Zukunft drauf zugreifen.
 
Danke für die Antworten, ich werde mich mal die DEVART Komponenten anschauen, die kannte ich noch nicht.

Anschließend werde ich mit dem Kunden besprechen, was wir mit dem Projekt machen wollen.

Aussitzen klingt im Augenblick am besten, da (auch) dieser Kunden möglichst wenig Geld noch ein Delphi stecken möchte. Speziell in diesen Fall sind alle Projekt bis auf zwei nach DotNet portiert.

generic 22. Aug 2018 16:40

AW: MSSQL - wie noch in Zukunft drauf zugreifen.
 
Man muss nur Probleme aussitzen:

Announcing the new release of OLE DB Driver for SQL Server - das war schon 10.2017.
Hab mich nur nicht mehr damit beschäftigt.

https://blogs.msdn.microsoft.com/sql...or-sql-server/

mkinzler 22. Aug 2018 17:10

AW: MSSQL - wie noch in Zukunft drauf zugreifen.
 
Der neue Status scheint wohl redeprecate zu sein.

p80286 22. Aug 2018 21:59

AW: MSSQL - wie noch in Zukunft drauf zugreifen.
 
Hast Du dafür eine Quelle?

Dieses Hin und Her ist wirklich Ausdruck höchster Professionalität.

Gruß
K-H

mkinzler 23. Aug 2018 04:50

AW: MSSQL - wie noch in Zukunft drauf zugreifen.
 
Nein ist nur ein Eindruck.

API 23. Aug 2018 06:39

AW: MSSQL - wie noch in Zukunft drauf zugreifen.
 
Zitat:

Zitat von mkinzler (Beitrag 1411351)
Der neue Status scheint wohl redeprecate zu sein.


Quelle: https://blogs.msdn.microsoft.com/sql...or-sql-server/

mkinzler 23. Aug 2018 07:51

AW: MSSQL - wie noch in Zukunft drauf zugreifen.
 
Den ersten Satz und den Link übersieht man.

ventiseis 23. Aug 2018 08:13

AW: MSSQL - wie noch in Zukunft drauf zugreifen.
 
Die meisten Beispiele beziehen sich ja immer auf ConnectionStrings und nicht direkt auf Delphi/dbExpress.

Wie siehts es eigentlich auf der Delphi-Seite aus? Kann irgendwas kaputt gehen, wenn ich statt
Code:
VendorLib=sqlncli10.dll
nun
Code:
VendorLib=sqloledb.dll
in die dbxdrivers.ini eintrage? Funktioniert das überhaupt mit dem mitgelieferten dbExpress-Treiber? Ist das jetzt zu empfehlen, da der NativeClient deprecated ist?

Die Dokumentation sagt auch nix sinnvolles darüber aus - nach SQL Server 2008 kommt nix mehr :? (hier funktioniert der SQL Server 2017 mit sqlncli10.dll ohne Probleme)

p80286 23. Aug 2018 08:30

AW: MSSQL - wie noch in Zukunft drauf zugreifen.
 
Der letzte Stand der Irrfahrt ist wohl https://blogs.msdn.microsoft.com/sql...or-sql-server/

Demnach, wenn ich es richtig interpretiere, ist msoledbsql der letzte Stand, aber für den SQL-Server nicht unbedingt notwendig. Aber wir kennen das ja, Zuverlässigkeit ist nicht unbedingt die Stärke von MS. Im Zweifel würde ich alle drei bereithalten (und es gibt ja noch 32 und 64 Bit) und testen so gut es geht.

(ich hab mir den SQL-express vor kurzem installiert um ein paar Access-Dateien zu lesen, und es war das Chaos in Tüten, z.zt. funktioniert Provider=SQLOLEDB.1 noch zufriedenstellend)

Gruß
K-H

generic 10. Jan 2019 10:29

AW: MSSQL - wie noch in Zukunft drauf zugreifen.
 
Zitat:

Zitat von p80286 (Beitrag 1411380)
Der letzte Stand der Irrfahrt ist wohl https://blogs.msdn.microsoft.com/sql...or-sql-server/

(ich hab mir den SQL-express vor kurzem installiert um ein paar Access-Dateien zu lesen, und es war das Chaos in Tüten, z.zt. funktioniert Provider=SQLOLEDB.1 noch zufriedenstellend)

Ja, dass ist der Treiber für SQLServer 8/2000 und dieser ist seit Windows 2000 imho Bestandteil vom OS. Der Treiber hat aber evtl. Probleme mit den neuen Datentypen. Zumindest unter Access 97 hatten wir da mal Problem mit "Date" und den 64bit Typen.

Aktuell dürfte es der OLE DB Treiber mit Namen "SQLNCLI11" sein.

HolgerX 10. Jan 2019 17:00

AW: MSSQL - wie noch in Zukunft drauf zugreifen.
 
Hmm..

Ich hab noch nie den SQLOLEDB.1 für Access verwendet ;)

Endweder
Microsoft.Jet.OLEDB.4.0 (bis Access 2003)
oder
Microsoft.ACE.OLEDB.12.0 (ab Access 2007)

https://www.connectionstrings.com/access/

Für Verbindungen mit MS-SQL-Server ist in Windows (so ab W2000) immer der SQLOLEDB.1 per se installiert.
Für die Verwendung des 'SQL Server Native Client OLE DB Provider' SQLNCLIxx muss dieser auf dem PC installiert werden, da dieser nicht per se vorhanden ist.

Hier gibt es verschiedenen Versionen:

'SQLNCLI'; // SQL Native Client 9.0 OLE DB Provider SQL Server 2005
'SQLNCLI10'; // SQL Native Client 10.0 OLE DB Provider SQL Server 2008
'SQLNCLI11'; // SQL Native Client 11.0 OLE DB Provider SQL Server 2012 , 2014 , 2016

Mit den verschiedenen Versionen sind weitere Funktionen für die Verbindung und auch Spezialitäten der entsprechenden SQL-Server Versionen gekommen.

Für die 'einfache' Verbindung über ADO genügt aber immer noch der 'SQLOLEDB.1', selbst für SQL-Server 2016/18.

Mit dem SQL-Server 2018 sollte der Native Client sterben, was jedoch seitens MS rückgängig gemacht wurde und der 'MSOLEDBSQL' als neuer OLE-DB Treiber gekommen ist.

https://docs.microsoft.com/de-de/sql...ql-server-2017

Auch dieser Treiber muss explizit installiert werden.

ventiseis 11. Jan 2019 15:01

AW: MSSQL - wie noch in Zukunft drauf zugreifen.
 
Gibt es denn Erfahrungswerte für den neuesten Treiber (MSOLEDBSQL) in Verbindung mit dbExress? Aktuell verwenden wir hier noch den älteren NativeClient, der zwar funktioniert, aber als veraltet gilt.

Ich versuchte dies schon mal herauszufinden, allerdings hat mir niemand geantwortet :-(


Alle Zeitangaben in WEZ +1. Es ist jetzt 03:54 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