Ich frage mich, ob es eine Möglichkeit gibt, einen Netzwerk-Stream als Datei zu behandeln. Ich könnte falsch liegen, aber ich sehe eine Datei als eine Array-Liste von Bytes. Wenn Sie eine Datei in Windows öffnen und Sie schreiben, fügen Sie Bytes in diese Datei (Array-Liste), glaube ich.Zugriff sqlite Datenbank über Netzwerk-Stream
Ich erstelle ein Programm, wo ich es mit einer SQLite-Datenbank bereitstellen. Ich erstelle auch die Client-Version, wo es eine Verbindung zu dieser Datenbankdatei im Netzwerk herstellt.
Damit die Benutzer eine Verbindung zur Datenbankdatei herstellen können, müssen sie die Anmeldeinformationen angeben, um auf Daten in dieser Datenbank zugreifen zu können. Ich möchte sie in die Lage versetzen, eine Verbindung herzustellen, ohne diese Informationen eingeben zu müssen.
Dinge, die ich nur gedacht:
meine Anwendung stattdessen mit SQL-Server bereitstellen. (Es ist nicht einfach, eine Anwendung mit einem SQL-Server zu installieren, wo sie den Server automatisch installiert, tcp-Verbindungen und alle notwendigen Konfigurationen aktiviert, um dies zu ermöglichen. Außerdem dauert es etwa 7 Minuten, wo sqlite weniger als 20 Sekunden benötigt!
Ich benutze WCF, um mit dem Server zu sprechen, damit ich eine Funktion für jede der Abfragen, die ich verwenden möchte, machen kann.Wenn ich also * aus Produkten auswählen möchte, kann ich die Methode SelectAllFromProducts() aufrufen auf dem WCF-Service ... (Hier erfinde ich das Rad irgendwie neu.) Auch das schöne daran wäre, dass meine Abfragen viel schneller sein werden, glaube ich. Sqlite ist serverless also, wenn Sie alle Artikel im Produkt finden, wo Produktname ist wie 'foo', wenn Sie darüber nachdenken, muss ein Computer auf alle Datensätze in der Datenbank über das Netzwerk zugreifen.Es wird schneller sein, wenn die lokale Berechnung r macht das und sendet die wenigen Ergebnisse an den Client.
SQLite behauptet, funktioniert möglicherweise mehrere Verbindungen zu unterstützen. Ich habe viele Probleme beim Abfragen der Datenbank von mehreren Threads alle mit der gleichen Verbindung erlebt. Wenn ich jedem Thread seine eigene Verbindung zuweise, ist alles in Ordnung. Der Grund, warum ich sqlite verwenden möchte, ist, dass es einfach zu implementieren ist. Ich habe versucht, meine Anwendung mit SQL Server bereitzustellen, und das ist nicht einfach und es dauert zu viel Zeit zu installieren. –
Zeit zu installieren? ernsthaft, es ist eine einmalige Sache, Sqlite wird Ihnen eine Menge Probleme in der Client-Server-Architektur geben. – Habib
Sie haben Recht, alles ist für das gedacht, was es ist. Zuerst muss ich eine stille Installation von SQL Server Express durchführen und dann muss ich dieses Problem durchgehen: http://StackOverflow.com/questions/9138172/enable-tcp-ip-remote-connections-to-sql- Server-Express-bereits installierte Datenbank. Ich denke nicht, dass das einfach ist, aber es ist möglich ... Deshalb wollte ich sqlite verwenden –