Laden...

Datenbankverbindung Windows CE

Erstellt von HelpMeOut vor 8 Jahren Letzter Beitrag vor 8 Jahren 3.083 Views
H
HelpMeOut Themenstarter:in
4 Beiträge seit 2015
vor 8 Jahren
Datenbankverbindung Windows CE

Hallo zusammen,

ich habe ein paar Fragen zur Datenbankanbindung mit C#. Ich versuche eine Datenbankverbindung zu einem Handscanner mit Windows CE 6.0 aufzubauen.
Da das Programm mit Visual Studio 2005 und C# programmiert werden soll damit es unter Windows CE 6.0 läuft musste ich mich in eine ganz neue Welt reinfinden 😉
So einigermaßen komme ich mit der IDE und der Sprache auch zurecht nur finde ich keinen richtigen Draht zur Datenbank.
Ich verwende die Sybase SQL 12 Datenbank. Da es anscheinend keine ODBC Anbindung im Windows CE 6.0 gibt muss ich mit ODBC-Datenquellen arbeiten.

Lange Rede, kurzer Sinn. Ich habe jetzt eine Woche lang alles mögliche gelesen und bin verwirrter als davor.
Meine Fragen sind folgende:

  • Muss ich auf dem Gerät auch eine Installation von Sybase durchführen?
  • Wie sieht so eine ODBC-Datenquelle aus und wo muss ich sie erstellen lassen?
  • Wie bringe ich schlussendlich die Verbindung in mein Programm? Gibt es da Komponenten dafür?

Ich hoffe so sehr, dass irgendjemand mir wenigstens ein paar der Fragen beantworten kann.
Denn so langsam überlege ich mir das Ganze mit Hilfe eines PHP-Scripts zu bewerkstelligen. Das ist aber, meiner Meinung nach, sehr unschön und die letzte Möglichkeit das Ganze doch noch zum Laufen zu bringen.

Ich bedanke mich schon im voraus. Vielen Dank für eure Zeit und Hilfe.

HelpMeOut

F
10.010 Beiträge seit 2004
vor 8 Jahren

Du kannst keinen (PC)ODBC Treiber auf einem CE Gerät installieren.
Auch die ADO Treiber von Sybase sind gewöhnungsbedürftig.
http://stackoverflow.com/questions/945501/sybase-ase-ado-net-2-0-provider

Aber ein WebService ( egal ob per PHP oder C# ) ist die deutlich bessere Wahl, vorallem wenn ihr mal auf eine andere DB umsteigt, muss die CE Software nicht angefasst werden.

H
HelpMeOut Themenstarter:in
4 Beiträge seit 2015
vor 8 Jahren

@FZelle
Danke für deinen Beitrag.

@FZelle und alle anderen
Muss ich den überhaupt irgendetwas auf dem CE installieren?
Ich würde gern die ODBC-Datenquellen benutzen, denn so wie ich es verstanden habe steht dort drin ja die Verbindung zur Datenbank auf dem Server drin.
Was ich mich frage wie benutze ich diese ODBC-Datenquelle jetzt genau? Mit welcher Komponente oder mit welchen Befehlen kann ich mit C# drauf zugreifen?

127 Beiträge seit 2015
vor 8 Jahren

ODBC läßt sich grundsätzlich unter Windows CE nicht nutzen, laut c# - Windows embedded CE 6.0 and Odbc - Stack Overflow

H
HelpMeOut Themenstarter:in
4 Beiträge seit 2015
vor 8 Jahren

Oh man -.-
Ich sag ja ich bin verwirrt...
Ich meinte die DSN Files. Dort steht eine direkte Verbindung zur Datenbank.
Jetzt stellt sich also die Frage wie ich auf diese DSN Files zugreifen muss bzw. wie ich mit denen arbeiten kann.

5.658 Beiträge seit 2006
vor 8 Jahren

Hi HelpMeOut,

Ich versuche eine Datenbankverbindung zu einem Handscanner mit Windows CE 6.0 aufzubauen.

Kannst du das Szenario evtl. mal etwas genauer erklären? Handscanner klingt für mich eher nach einem Eingabegerät. Wofür braucht ein Scanner eine Datenbankverbindung? Eigentlich wäre es doch die Verantwortung der Anwendungssoftware, sowohl mit dem Scanner als auch mit der Datenbank zu kommunizieren.

Christian

Weeks of programming can save you hours of planning

H
HelpMeOut Themenstarter:in
4 Beiträge seit 2015
vor 8 Jahren

@MrSparkle
Hallo Christian,
also:
Es soll eine Inventur-, Lagerverwaltung programmiert werden. Der Anwender läuft mit einem MDE Gerät rum und scannt die Artikel. Danach hat er die Möglichkeit den Bestand zu korrigieren, Packscheine bequemer auszuführen usw.

Es kommt also schon eine Software drauf. Nur weiß ich nicht, wie bereits oben vielleicht nicht ganz deutlich erklärt, wie ich diese Software mit der Datenbank auf dem Server verbinden soll.

Als Beispiel:
Ich programmiere eigentlich in Pascal mit Delphi. Dort habe ich meine Komponenten(Verbindungen, Datasets, usw.) in die ich meine Server, Logins, usw. eintragen kann.

Bei C#, Visual Studio 2005 und Windows CE habe ich aber keine einzige Anlaufstelle gefunden.

Sybase schreibt hier http://infocenter.sybase.com/archive/index.jsp?topic=/com.sybase.dc50061_0250/html/pkrsrce/CADCFBFG.htm
etwas über DSN Files. Wie kann ich aber auf diese DSN Files mit meinem Programm zugreifen?

So langsam kommt mir die Lösung mit dem PHP-Script so schön vor 😦
Aber ich will es anständig machen, einer vielleicht doch noch eine Idee???

16.827 Beiträge seit 2008
vor 8 Jahren

Solche Scanner sollten niemals direkt mit einer Datenbank kommunizieren, sondern immer mit einem vorgeschaltenem (Web-)Service.
Dahingehend löst sich das Problem auch in Luft auf. Das hat auch was mit Sicherheit und Consistency zutun.

5.658 Beiträge seit 2006
vor 8 Jahren

Ich denke, dann wird die beste Lösung sein, auf eine direkte Datenbankanbindung zu verzichten und stattdessen einen Webservice zu verwenden, wie FZelle gleich in der ersten Antwort vorgeschlagen hat (und Abt direkt vor mir).

Damit umgehst du nicht nur die Einschränkungen von Windows CE beim Datenbankzugriff, sondern hast auch alle Vorteile, die u.a. in [Artikel] Drei-Schichten-Architektur beschrieben sind.

Christian

Weeks of programming can save you hours of planning