As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 9 years ago.
I am thinking of developing a CRM type database application in C# that I can sell to clients, and am considering using Microsoft SQL Server as the back-end.
I would like potential clients to have the option of having the back-end either local or on a hosted platform. If they choose the hosted option - that would be fine as we/third-party, could provide the SQL/Server platform. However, if they wish to run locally, I wouldn't want them to have to pay for the licencing of SQL (as well as for my software).
Is there a free distributable version of SQL Server, that is able to cope with up to 30(ish) users, and capable of quite a lot of work? I was thinking about Express - but not sure if that would be the right path.
Any suggestions (SQL Server or otherwise) would be greatly appreciated.
Thank you.
There are some limitations in SQL Server Express (10Gb per database, 1Gb of RAM and only one physical CPU).
May I suggest MySQL, open source and works well with .Net as it supports Entity Framework.
Related
As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 9 years ago.
Is there any way to configure mySql as a database server with concurrency access?
I want to develop a windows application with a open source database where multiple access at the same time. as per the research I did on the internet, Mysql is the best but just want to make sure that Mysql capabilities in the above scenario.
any help appreciated.
I believe that you're misunderstanding something, but I'm not sure what, so I'll just explain stuff a bit :-)
MySQL's single and sole purpose is what you describe. It's to store data and allow it to be accessed concurrently without too many problems.
Your question is a bit like asking "Is there any way to use a hammer to hit a nail? I have a large amount of nails here, and I need to fix some pieces of wood to each other, and I need something to slam them in. Will a hammer do?"
That said, besides MySQL, there's also nice alternatives like PostgreSQL. PostgreSQL is a bit more full-featured, and has recently been taking over MySQL in popularity. Also, "MariaDB" is, effectively, the new name of the latest MySQL version, so you might want to google for that.
Finally, since you want to develop a Windows application, maybe neither of these databases are a good choice - if every user needs to install a database server in order to use your application, installation will be difficult and error-prone (believe me - I have once, maintained the installers for a Windows application that depends on a MySQL server on the user's computer, and it's hell). You could also look into SQLite, a database (which also supports concurrent access) that you can bundle immediately with the program you're making. It's really just a library that you link into your program, so it's not a server at all. But it's a full-featured SQL database.
As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 9 years ago.
I have a WPF application that contains two databases(local and distant).I'd connect to the distant database and execute some queries of selection (no modification) , for the local one I need to read,delete and update many informations. I have to choose between Ado.net and Linq to sql.
So, what is the best choice between them and what are the configuration parametrs needed in the distant Sql Server to accept connection from other PC?
I have to choose between Ado.net and Linq to sql.
LINQ-to-SQL is basically an ORM wrapper around ADO.NET. However, when I hear the word "distant", I would usually assume that direct ADO.NET connectivity is no longer appropriate. If the boxes are on different networks, or separated by firewalls / sub-nets / etc, then the most appropriate thing would be to expose your data via a web-service (that internally may use ADO.NET or LINQ-to-SQL, but that is entirely an implementation detail). That web-service could be exposed via WCF, ASMX, ServiceStack, manually-implemented REST, or any other kind of web-based access technology you like the look of.
Then the only question is: when running on the same network ("local" in your example)... should it continue to use the web-service (for code-reduction, etc), or should it also have a direct (ADO.NET / LINQ-to-SQL) connection option? The first would be no extra code (because the web-service already exists to support "remote" clients); the second (direct) option may in some (limited) scenarios have some performance advantages.
As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 10 years ago.
I should write little app, that will work with single table database in single user mode (only one user will be use it). This user only should view data on read only mode. He shouldn't change any data.
Data is going to be updated physically one time in a month by backup and/or copy past.
Which database is good for this? MS Access, ms sql express, ms sqlce? Application is going to be written on C# Windows Forms. And performance is necessary.
I would go for Sqlite: fast, easy with full ACID support.
It's easy: no services, no installation, just a file.
It's scallable: can have multiple tables and complicated relations between them, if it's neccessary for you, but do not have stored-procedures
Maybe an OODB is your answer. they are still faster in reading then anytype of SQL database.
I have used db4o and it's pretty amazing what it can do.
As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 11 years ago.
I mainly develop Java EE webapps so I don't have any experiences with desktop application at all. Now a friend of mine needed a little tool for daily business which I've build with Seam and a MySQL db in the background. In case of my experience this was done really fast.
Now I want to go further and produce a real small desktop app for him. I've looked at various options and developing a gtk# application with Mono seems my way to go for this little project. The application should be small and fast so I was thinking if a whole MySQL server is needed for my solution here.
What options I could evaluate instead of a database server which has to run as a service on the workingmachine? Storing data as XML?
To clarify the application has now 6 entites (Products, ProductTypes, Colors, Sizes, Orders, Production). On daily basis orders and production are added to a ProductType, very simple stuff.
XML would work for small sets up data, but if you are going to have larger sets I would recommend something like sqlite.
http://www.sqlite.org/
I have looked at various options and I tend to like SQLite
for client applications on .NET. It is a file based solution that does not require a database server to be installed on the machine, much like using an Access database but better.
Try SQLite
Can be other DB will interest, for example, Db4o or SQL CE 4.
As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 11 years ago.
Hey guys, I'm starting the development of a native iPhone app which will implement a chat interface. So far the implementation seems to be pretty complicated, I've read of Websockets, XMPP/Jabber and raw TCP/IP sockets, but have no idea which to use. The client will be programmed in Objective-C, and I would like to program the server in C# (and not have to pay $100/month for a hosting service).
What would you guys suggest?
I would suggest using something like XMPP/Jabber as there are already a ton of libraries in existence for pretty much every language under the sun. That would allow you to focus on the unique aspects of your app rather than having to worry about implementing a protocol. Check out the XMPP website for a list of libraries for both clients and servers.
With regards to hosting, C# might be difficult to find free hosting simply because it requires a Windows installation which requires a non-free license. You can find cheap Windows hosting through somebody like GoDaddy, but you won't be able to find free (at least I doubt it).