Best suitable SQL server for VB 8 Express Edition? - sql-server

I am about to start a project on VB.. For that I am using Visual Basics 2008 Express Edition.. So I just wanted to know which is the best suitable SQL Server for the same.

SQL Server 2008 was released alongside VS 2008, so one of its variants would be recommended. The Express Edition will work well. If you want to use User Instances (such as when the database file is stored in an App_Data folder for a website, you need to have Express Edition installed. In addition, if you plan to use any data related projects in an actual production environment, but don't want to spend, it's the only option that's freely available.
Of course, you might want to consider the age of the product. VS 2008 itself is 2 generations behind (at present, Jan 2013), as is SQL Server 2008. You can easily use later editions of both SQL Server and Visual Studio (in there Express Editions), and I'd usually recommend moving up to the latest that's installable on your machine.
If you're wanting to try out all of the SQL Server features, a trial installation or Developer Edition would be recommended - but for the latter, you need an MSDN license, and if you're going that far, you should seriously consider moving up from VS Express.

Microsoft SQL Server 2008 R2 hands down. It's free and you can use stored procedures, functions and such.

Related

How to debug stored procedures in SQL Server 2018

How can we debug stored procedures in SQL Server 2018? As SQL Server 2018 and above versions do not have this option. Debugging makes life really easy. I have been trying to solve one problem for past one hour and if I could debug my stored procedure, I could have definitely save a lot of time. I did search a lot and did not find anything useful that could work.
Please do let me know if there is any way. Thanks.
How can we debug stored procedures in SQL Server 2018?
There is no such product as "SQL Server 2018" - I assume you're referring to one of the following:
SQL Server 2017
SQL Server 2019
SQL Server Management Studio 18
If you're referring to SQL Server 2017 or SQL Server 2019 then you can debug Stored Procedures by either:
Using SQL Server Management Studio 17.
Which may not work when connecting to a SQL Server 2019 instance, so YMMV.
Using SQL Server Data Tools (aka SSDT).
This is currently the officially supported tool for debugging SQL Server procedures and other objects in SQL Server.
SSDT is included in the free-as-in-beer Community Edition of Visual Studio without restrictions on its use in commercial settings.
But SSDT is not in any way a replacement for SSMS: SSDT only has basic tools for administering running SQL Server instances. So you'll need both SSMS and SSDT installed side-by-side.
If you're actually referring to SQL Server Management Studio 18 then you cannot debug procedures in SSMS 18 because Microsoft removed the feature for reasons unknown - I suspect perhaps involving the usual vague business reasons the veeps hand-wave with - because I cannot fathom any seriously good reason (though I agree the tooling was clunky, it did work at least).
To debug a procedure with SSDT you need to install Visual Studio (2017, 2019, they all have it) and select SSDT during VS installation. In previous releases of VS (like 2012, 2013, and 2015) SSDT used to be a separate download for VS but since VS 2017 it's part of the main installer.
When VS opens, dismiss the Start Screen and get to the main window, and go View > SQL Server Object Explorer, then connect to your server and the rest should be familiar to you.
As it sounds like you already have a substantial database project that exists in an extant SQL Server instance but also that you are not currently using SSDT - so I recommend you take this opportunity to actually move your project out of SQL Server and into an SSDT *.sqlproj - that way you can manage your database's design with source-control (Git, etc) and do local "builds" of your database (which will verify your code is valid T-SQL, it's saved me a lot of stress and trouble since I started using SSDT over 12 years ago) - it also makes publishing, deployments and schema changes a breeze (except for the fact the SSDT seems to get buggier and develops new glitches with each new release, ugh).

SQL Source Control and SQL Express "Support"

Red Gate's SQL Source Control product documentation (http://documentation.red-gate.com/display/SOC3/Requirements) states:
SQL Source Control doesn't support SQL Server 2000, SQL Express, SQL Azure or SSMS Express
I have been evaluating their product and assumed based off this statement that "doesn't support" meant "will not work". However, I have made admittedly trivial changes to a central SQL Server Standard Edition database FROM a local SQL Express edition installation.
SQL Server edition differences notwithstanding - I am wondering what pitfalls this kind of architecture would have, again, strictly from a SQL Source Control perspective. We are looking for a way to bridge the gap between our planned upgrade to SQL Server 2012 from 2008 R2, and do not want to purchase 2008 dev edition licenses knowing that we have months until we start on our upgrade path.
Is anyone implementing a dedicated database development model with SQL Express on developer machines?
I'm a pre-sales engineer for Redgate. We use SQL Express for most of the machines that we use in our own training courses for the same reason - licencing.
While it will probably work fine we don't officially support Express. The SQL Server editions that we say we support are the ones we test against. Given the number of SQL Server editions out there we only test against the ones we list on our website as officially supported. Hence we try to make it clear if you are using an edition that we do not test against.
However, assuming your dev databases are disposable and that your source of truth is your source code - which can be rolled back - and on the proviso that you understand our disclaimer that it is not officially supported, I'd unofficially say that it will probably work well enough.
Sorry for not answering this a year ago. I've just started making an effort to be more pro-active on Stack!

Upgrade SQL Server 2005 to 2008 or can we go to 2012

We are running SQL Server 2005 and we want to upgrade the instance.
Is it best to go to SQL 2008 or can we jump right to SQL 2012?
What is recommended and what should we look out for?
I am thinking about doing this.
Newest version is often best choice, but that depends on applications, which use SQL server. (Of course hardware and OS should match too.)
If it is your in-house developed app, then you just have to run all tests against newest version, optionally fix problems and let it run.
If it is some 3rd party app, then you need to ask from app vendor, what SQL versions are (best) supported.
If you are developing and selling some application based on SQL server, then you have to support and maintain many versions of server (like we do - we support SQL2000 to SQL2008; SQL2012 is currently in testing phase).

Is there a difference between SQL Server Express (2012) and LocalDB?

In his excellent and popular comparision chart, ErikEJ draws a distinction between SQL Server Express 2012, and SQL Server 2012 LocalDB. However, I can't find such a distinction anywhere else in the MSDN documentation ("LocalDB" isn't even mentioned in the official MS SS12 book or on the MSDN SQL Edition comparison page.) This leads me to suspect that Express and LocalDB aren't really two separate products as ErikEJ suggests, but rather just two different terms for the same thing (which would explain why, on this MSDN page, it is called "SQL Server 2012 Express LocalDB").
If there really is a difference between the products, can anyone point me to some official documentation comparing them?
OK, I think I have found the answer to my own question. (It was buried under the tabs on the SS Express product page.)
Here is a summary of the distinctives of LocalDB I found on that page:
LocalDB is a lightweight deployment option for SQL Server Express Edition with fewer prerequisites and quicker installation.
LocalDB has all of the same programmability features as SQL Express, but runs in "user mode"* with applications and not as a service.
LocalDB is not intended for multi-user scenarios or to be used as a server. (If you need to accept remote connections or administer remotely, you need SQL Server Express.)
"Express with Tools" (which includes SS Management Studio Express, Azure, etc) can be used with LocalDB or without. (The same goes for "Express with Advanced Services".)
UPDATE: I just found this useful description in Windows IT Pro (Jul '12, p.23):
LocalDB isn’t SQL Server Express, nor is it SQL Server Compact.
LocalDB uses the same sqlservr.exe engine as the other editions of
SQL Server, but it runs in user mode—not as a service. LocalDB is
used for offline development by tools such as SSDT to ensure that the
code you develop is 100-percent compatible with your production
SQL Server database.
If I am reading this correctly, LocalDB seems to be more like a configuration option of Express than an entirely separate product. So apparently if I download Express (or Express w/ Tools), I will have the option to install the LocalDB version, which is supposedly easier ("zero-configuration") than the full Express. (Update: with VS2012, LocalDB comes installed by default.)
One other important distinction, according to this post, is that "currently Visual Studio 2010 doesn't really work with LocalDB." (We have to use SS Management Studio instead, at least for now.)
*(The concept of "User Mode" or "User Instances" is a key distinctive of LocalDB. In fact, according to this post, "LocalDB can be seen as an upgrade of the User Instances feature of SQL Server Express." For more about User Instances, refer to the MSDN blogpost "What is a RANU?")
UPDATE - Feb 2021
LocalDB is SQL Server Express edition
From official documentation
Express edition is the entry-level, free database and is ideal for
learning and building desktop and small server data-driven
applications. It is the best choice for independent software vendors,
developers, and hobbyists building client applications. If you need
more advanced database features, SQL Server Express can be seamlessly
upgraded to other higher end versions of SQL Server. SQL Server
Express LocalDB is a lightweight version of Express that has all of
its programmability features, runs in user mode and has a fast,
zero-configuration installation and a short list of prerequisites.
The docs provides a very detailed comparison of features between editions.
I use a table from ErikEJ, which shows: the features and differences between SQL CE 3.5, SQL CE 4, Local DB and SQL Server 2012. According to this table the differences between Local DB and SQL Server 2012 are:
Installation size:
SQL Server 2012: 120 MB download size; 300 MB expanded on disk
Local DB: 32 MB download size; 160 MB on disk
Runs as Service
SQL Server 2012: Yes
Local DB: No (runs as process started by app)
FILESTREAM support
SQL Server 2012: Yes
Local DB: No
Subscriber for merge replication
SQL Server 2012: Yes
Local DB: No
Number of concurrent connections
SQL Server 2012: Unlimited
Local DB: Unlimited (but only local)
NB: Sorry this isn't "official documentation", but hope it's useful to the next bod as it answers the underlying query about the differences.
The major difference are Server Express run as a service while LocalDB doesn't need any server or intensive processing to run.

Local database with Visual Basic Express 2010

Visual Basic 2010 Express, lets the user to add a Local Database with .sdf extension. These databases needs MICROSOFT SQL Server to be created or they can run in the user's pc without any additional software? What are the limit of these databases unlike an external database?
You need Sql Server Compact Edition. Compact Edition is an in-process/desktop/embedded/file-based database — like Access or sqlite. It's free, and much easier to deploy than a full Sql Server edition.
You will need a installation of Microsoft SQL Server® 2008 Express, which is free to download.
Download can be found at MSDN.
Comparison between Express and compact version can be found here, this also shows the given limits of the express version:
Max 1 CPU/Server
1 GB RAM usage
4 GB DB size
EDIT:
You can find a wider comparison from Enterprise to Express editions here.
EDIT 2:
My mistake. Of course SDF is indeed for Compact version, not for Express.
The compact version is free to download and available at Microsoft here.

Resources