Embedded Database voor .net dat een netwerk kan weglopen

stemmen
30

Ik was (en ben nog steeds) op zoek naar een embedded database om te worden gebruikt in een .net (c #) applicatie. De waarschuwing: de applicatie (of tenminste de database) wordt opgeslagen op een netwerkstation, maar alleen door 1 gebruiker tegelijk.

Nu, mijn eerste idee was SQL Server Compact editie . Dat is echt mooi integreated, maar het kan niet weglopen een netwerk.

Firebird lijkt hetzelfde probleem, maar de .net Integratie lijkt niet echt eerste klas en is grotendeels zonder papieren.

Blackfish SQL ziet er interessant uit, maar er is geen proces van het .NET versie. De prijs is ook OK.

Een andere suggesties van iets dat goed werkt met .net en loopt op een netwerk zonder de noodzaak van het daadwerkelijk installeren van een server software?

De vraag is gesteld op 03/08/2008 om 15:41
bron van user
In andere talen...                            


10 antwoorden

stemmen
21

SQLite kwam naar mijn mening tijdens het lezen van uw vraag, en ik ben er vrij zeker van dat het mogelijk is om toegang te krijgen vanaf een netwerkstation als u zich houden aan de beperking van 1 gebruiker tegelijk.

SQLite op .NET - Ga aan de slag in 3 minuten

antwoordde op 03/08/2008 om 15:48
bron van user

stemmen
6

Check out VistaDB . Ze hebben een zeer goed product, de server versie (3.4) is in beta en is zeer dicht bij vrij te geven.

antwoordde op 03/08/2008 om 15:57
bron van user

stemmen
4

Waarom geen gebruik maken van SQL Server 2005 Express Edition ?

Het hangt af van wat je bedoelt met "embedded" - maar je kunt SQLServer2005E herdistribueren met uw toepassingen en de gebruiker heeft nooit te weten dat het er is.

Inbedding SQL Server Express in Applications

Inbedding SQL Server Express in de Custom Applications

antwoordde op 03/08/2008 om 16:34
bron van user

stemmen
8

Het klinkt als ADO / Access is perfect voor uw behoeften. Het is gebakken in de MS stack, goed gekruid, en multi-user.

U kunt programmatisch maken van een DB als volgt:

Dim catalog as New ADOX.Catalog
Catalog.Create("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=\\server\path\to\db.mdb")

U kunt dan gebruik maken van standaard ADO.NET methoden om te communiceren met de database.

antwoordde op 03/08/2008 om 16:48
bron van user

stemmen
8

U kunt gebruik maken van de Firebird embeded, het is gewoon een dll die je nodig hebt om het schip met u app.

Over dingen die mensen zonder papieren, dat is niet echt waar, de vuurvogel .NET driver implementeert de ADO-interfaces, dus als je weet dat ADO kunt u werken met Firebird, in principe in plaats van SQLConnection u FBConnection gebruiken en ga zo maar door, maar mijn advies is om een ​​schrijven toegang tot de gegevens laag en gebruik gewoon interfaces op uw code, zoiets als dit:

using FirebirdSql.Data.FirebirdClient;

public static IDbConnection MyConnection()
{
    FbConnection cn = new FbConnection("...");
    return cn;
}

Dit voorbeeld is heel eenvoudig, maar je zult niet veel meer dan dat nodig hebben.

We maken gebruik van Firebird voor onze alle toepassingen zonder enige problemen, moet je op zijn minst proberen het uit.

antwoordde op 09/08/2008 om 13:51
bron van user

stemmen
2

Er is ook Valentina . Ik cam e over dit product toen ik werkte op sommige Real Basic-project. De RB-versie is zeer goed.

antwoordde op 10/08/2008 om 03:55
bron van user

stemmen
10

Ik zou aanraden Advantage Database Server (www.advantagedatabase.com). Het is een volwassen ingebed DB met grote steun en is toegankelijk vanaf vele ontwikkeling talen naast .NET. De "lokale" versie is gratis, loopt via de binnenkant van uw aanvraag in de vorm van een DLL, vereist geen installatie op de server / netwerk te delen, en ondersteunt alle belangrijke DB functies. U kunt de DB en / of applicatie bestanden op het netwerk en op te slaan; het maakt niet uit waar de gegevens.

Disclaimer: Ik ben een ingenieur in de ADS R & D-groep. Ik beloof, het rockt :)

antwoordde op 21/10/2008 om 20:20
bron van user

stemmen
7

Een beetje laat om de post hier .. En VistaDB is al genoemd, maar ik wilde erop wijzen dat VistaDB is 100% beheerd (omdat je bericht is getagd .net). Het kan draaien vanaf een gedeelde netwerkschijf, en is 1MB xcopy ingezet.

Aangezien u SQL CE noemen, we steunen ook TSQL Syntax en datatypes (in feite meer dan SQL CE) en hebben updateable uitzicht, TSQL Procs en andere dingen ontbreken in SQL CE.

antwoordde op 22/04/2009 om 22:01
bron van user

stemmen
4

Ik ben in de war.

Je vraagt ​​om een ​​embeded databank - waar de database zelf wordt opgeslagen op de server. dat vertaalt naar het opslaan van de gegevens bestand op een netwerk te delen. U dan zeggen dat SQL Compact Edition zal niet werken ... behalve dat als men kijkt naar dit document:

Word Document:
Kiezen tussen SQL Server 2005 Compact Edition en SQL Server 2005 Express Edition

Op pagina 8 heb je een mooi groot groen vinkje naast "Data opslag van bestanden op een netwerk te delen".

Dus het lijkt mij dat je eerste gedachte was de juiste is.

antwoordde op 22/04/2009 om 22:18
bron van user

stemmen
2

Heeft u ook een OODB overwogen? Vanuit de diverse open bronnen alternatieven adviseer ik db4o (sorry voor de zelfpromotie :)) die ofwel ingesloten of in client / server-modus kan draaien.

Het beste

Adriano

antwoordde op 16/05/2010 om 16:18
bron van user

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more