Saving on a play SQL server? - sql

I just started an internship position this week and I have to learn SQL to do my project. Problem is, the only server they have access to is not something I can really play around with and learn.
I asked if there was any way to make a database locally and they just told me I can add tables on to the already set up databases. I am not allowed to do anything else on it other than queries and the lesson I'm working with uses other functionalities. I can't get my program to work correctly and I'm sure the limited functionality I have has to do with it.
I would like to learn as much as possible before they are ready for me to start the actual project.

You can download SQL Server Express Edition here: https://www.microsoft.com/en-us/sql-server/sql-server-editions-express. Why not install it on your PC at home? You can then login as sa and do whatever you want. I have it installed on my PC at home. It is free.
It is worth noting that SQL Server Express does not have all the features of SQL Server Standard/Enterprise. If you require the full set of features then you can buy SQL Server Developer Edition: https://www.microsoft.com/en-us/sql-server/application-development. The Developer Edition is like the Enterprise edition, but for developers. I believe you can get it for less than £50.

I've personally not played around with these, but I keep hearing good things about them: Microsoft Virtual Labs: https://technet.microsoft.com/en-us/virtuallabs/
From what I understand, whilst designed for specific purpose, they might be flexible enough to try other concepts on as well.
Worth a short, perhaps?

Related

How to start with a DBMS project

We are supposed to make a web-based project using postgres. The topic is library management system, where on a website a user can search whether a book is available in the library, if it is present then where, and so on.
The problem is just that I don't know anything about web development. I do have a pretty good knowledge of sql, but I'm confused a bit in that too, because I don't know if I'll just have to run the queries in my laptop in postgres and link if it "somehow" to the website, or will I have to upload my data on some server (for eg., firebase in case Android development) to be used in my website.
So briefly, I've just two questions:-
How should I start, because I have no idea where to begin with(I do have all the data needed btw)?
About postgres, will the queries run on my laptop or some server?
Please help me with this. Some online resources for the same are way more than just welcome, because I was unable to find any. Thank you!
First of all, you'd take a look at some design pattern in order to learn some theory on how to make (web) apps in the right way. You can visit Martin Fowler's web site and read them.
Once studied, you'd follow my advice. If you've got Java expetise, I'd start by learning Spring Boot, which has every piece you need to achieve your goal. This project follows lot's of design patterns (MVC, Repository, DAO, AOP, IoC/DI...) and lets you follow others (DTO). Anyway, choose the right template engine (I like Thymeleaf) or any other framework (Angular 2...).
Hope it helps.
welcome to development world. When starting out it seems very confusing but it is not that much.
Start slow, there are many tutorials across which helps.. just do a bit of google.
To answer your question :
How should I start, because I have no idea where to begin with(I do have all the data needed btw)?
-- Google simple website with postgres db. For that you will require the database to be installed and a webserver on your machine. All of which will be used when you host the website
About postgres, will the queries run on my laptop or some server?
-- It will run on where you have installed the database..
hope this helps :)

Learning SQL in Microsoft Visual Studio

Firstly, apologies if this question is in the wrong place.
I'm a student who has literally just started learning SQL yesterday, using the SQL*Plus command-line interface. This is fine so far - I've created and populated tables, run simple queries and can spool to files etc. But I'd like a more 'visual' approach to help with my understanding (i.e. I'd like to be able to see the 'objects' as I work on them (much like BlueJ for when I started learning Java). Is this possible with any free software?
I have Microsoft Visual Studio Professional 2012 (which I'm new to) - is it possible in this? I can create a new SQL file but without a 'real world database' can I actually run commands in a similar way to the command-line SQL that I've been doing?
Any help at all would be absolutely amazing. Apologies if I'm misunderstanding anything or being simple - I've literally been using SQL*Plus etc for a few hours.
Visual Studio does support designing SQL databases. However, I think the best option for managing a database is SQL Server Management Studio.
SSMS comes with most installations of SQL Server, but if it's not installed, you will have to re-run the installer to install it.
SSMS supports running arbitrary SQL queries, as you may be used to. It also supports a powerful GUI interface (based on the VS interface) for working with all kinds of database objects. You can completely design and populate a database without manually writing any SQL. If you want, you can even make a change, and view the SQL generated to change the database.
Give it a try, and good luck learning SQL.
I was just in your boat a few months ago. I had to teach myself the .NET side of SQL with SQL Server, LINQ, and C# and wanted to share my experience with you.
The fact of the matter is, SQL Server Management Studio (SSMS) is built on top of Visual Studio. I have both SQL Server 2012, and Visual Studio 2010/2012 installed on my computer, and in my experience. Look for an extension called "SQL Connect" in Visual Studio. It supports GUI building of tables.
As far as free software, if you are a student like me, you should be eligible for the Dreamspark program. Microsoft graciously allows academic licenses for virtually all their development software (including some freebies like free copies of Windows 7 Professional, OneNote, and Lync).
Also a book I highly, highly recommend to supplement your learning is "SQL Visual Quickstart Guide (3rd Edition)" It's only ~15 dollars for the eBook. Also, the Pluralsight videos on SQL Server help a lot, which you will get a three free month trial through Dreamspark. There is also a wealth of examples on the MSDN website that teach you with the Adventureworks database, which should be on Microsoft CodePlex.
Happy learning!

Small standalone SQL database similar to access in the old days(ie file database)

I am looking for a easy to use and deploy sql type database i can ship with a desktop application.
This will be a small application user's can download from my website.
In the vb6 days, access was the common database for small desktop apps, what is my option these days?
Looking at SQL CE it seems to have a quite a few limitations such as count(distinct) etc
SQL express needs to be installed and running as a service (could i include the SQL express deployments in my deployment so the user doesn't even know its been installed? I assume size would then be an issue)
SQL 2005/2008 is not an option due to size and licensing restrictions.
I would like to use c#, wpf and entity framework.
What would seem to be the best options based on your knowledge and experience?
Thanks
SQLite (also see corresponding wrappers for the .NET Framework) might do the trick for you.
FirebirdSQL. More functions, plus UDFs made in C/C++ or even Delphi.

SQL Server 2008 : Standard or SQL Express

Which is a better choice on a development box if you primarily develop Asp.Net applications and SSRS reports. I have never had to use the Express editions, so I don't really know the pros or cons.
The cons I have listed for Standard+ editions are:
toll it takes on system resources
pain to attach database for projects
pain to detach unused databases
$$$
Pros:
You have everything you need
Management Studio features
Easy move to production
Are you talking about for your dev machine, or for production? If it's your dev machine I would just pony up the ~$50USD for the developer sku, the only caveat is to make sure you don't make use of enterprise features unless you will have enterprise in prod.
I don't have experience with the 2008 versions as yet, but I've used both the 2005 and 2000 equivalent (MSDE) on live production projects. The codebase for both of these is essentially the same as the full blown product but with restrictions on ussage and the absence of some tools - the later of which can be generally worked around with 3rd party replacements.
If the number of concurrent users is low, and the the database is unlikely to grow that large, then generally the express versions are fine. It's a little more hassle to manage than having the full edition to hand, but the cost saving is significant.
Low and that large are of course elastic, but for example we have a real estate application that runs in several offices with half a dozen users and a couple of tables with a million rows and performance and management is perfectly fine.
SQL Server Developer Edition.
The only problem you have to watch out for is that it has features not available (it basically has the Enterprise Edition features) in the Standard Edition (for example, indexed views).
So, for instance, dev edition will work much better than express on your quad-proc dev box.
http://www.microsoft.com/sqlserver/2008/en/us/editions-compare.aspx
Usually there is no "Best" choice, however in this case there is: SQL Server Developer Edition. Reason: It gives you everything in every other edition (except the licensing) for all of $65-$90. Seriously, any SQL developer would be crazy not to get it, it's one of the best deals in the history of software.
Other stuff that you mentioned:
System Load: this depends much more of how you use it than what edition it is. I have both 2005 & 2008 instances running on my 3 year-old 2GB laptop with no ill effects.
pain to attach database for projects: painless with developer edition.
pain to detach unused databases: same
"You have everything you need": now you have everything that you will EVER need (for 2008).
Management Studio features: Yep
Easy move to production: Yep
Honestly, at this price, employers should be giving this to all of their developers.
On the rare occasions where I am in the same situation (usually on my personal web hosting), I opt for sql express + various free or cheap third party tools to substitute for SSMS and EM.
The development editions have all the features of the enterprise editions (with some quirky exceptions, consult BOL), so it's not like the dev edition will give you fewer things to play with. You just won't be able to let any of your customers connect to your SQL developer edition, you'll have to deploy your SSRS reports to a Standard Edition production server somewhere.
If you are using SQL at work and your employer doesn't have a license for SQL Standard at all, then that sound like a licensing problem.
In short, I think the choice of edition starts with a choice of license, which is an economic and legal question, not really a feature set question. (i.e. will your planned uses be legit with your chosen license? with SQL Express and Dev edition you can't wrong-- the sql express has you covered for production use, the dev edition has you covered for being able to use the features you want, like SSMS)
Express isn't really designed for actual products - it is more to let developers familiarize themselves with the system and see if they like it, or for sample apps.
Express is free though, but if you need a free solution you might be better off with MySql.

Would you consider using an alternative to MS SQL Server Management Studio? [closed]

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.
At work we recently upgraded from Microsoft SQL Server 7 to SQL 2005. The database engine is a lot more advanced, but the management studio is pretty awful in a number of ways. Most of our developers decided they preferred to stick with the old Query Analyzer tool, even though it had a lot of limitations.
In my spare time, I decided to write a replacement for Query Analyzer / Management Studio that did the things our developers most needed to do. I finally got permission to release it for free: Versabanq Squel (versabanq.com/squel).
Like I said, it's free, so this isn't a sales pitch. But it got me thinking. What I'm wondering is: are most of you satisfied with SQL Studio the way it is? Do people just use it because it's what Microsoft pushes on them? Are there many people out there looking for something better? Maybe I can get some support for long-term development of this, if it looks like there might be some wider interest.
By the way, check out SQL Server Management Studio Alternatives, someone else's earlier question on this topic. What I see there is that there are surprisingly few options. Why do you think that is?
Ha, I came from exactly the same standpoint, so I made a tool, code completion and all, plus there's a free edition available. It's at http://www.atlantis-interactive.co.uk - it's basically for people who miss QA. Your tool looks nice, good job.
While I would love something better, it would have to be significantly better and free. SMS is definetly a hog but I've gotten used to it. What I miss the most is Query Analyzer. I don't mind using SSMS to manage the server but having a fast lightweight, editor for SQL queries would be awsome...
Did I mention free? Not something I'm willing to pay for right now.
EDIT
FYI I downloaded your tool looks neat but you need to add support for Windows Authentications unless I am just missing how its done.
I think Management Studio is far superior to the old SQL 2000 tools. Enterprise Manager was a shocker of a tool, forever hanging and crashing. Query Analyzer is still ok if ALL you ever do is create and run SQL queries, but to be honest once I started using Management Studio I never went back to EM/QA.
I've used Apex SQL Edit before and preferred it over Management Studio. It provided intellisense well before SQL Server 2008's Management Studio.
http://www.apexsql.com/sql_tools_edit.asp
I just moved to developing on linux with mysql and boy do I miss MS SQL Management Studio. It is a fantastic tool. I agree it takes a bit getting used to after using query analyzer, but the query tool in management studio is actually better. I really do not think there is a better alternative. I tried the Apex SQL Edit also but found MS to be superior.
I also suggest using SQL Prompt from Red-Gate to get intellisense (autocomplete). Their other tools are also excellent.
If you are currently developing (or will start developing) using the .NET 3.5 Framework, then I suggest you give your developers this little handy application: LINQPad
This will help your developers learn LINQ (an Integrated O/R Mapper that makes .net developers' lives much easier) syntax, and at the same time use a more-light weight SQL management application
This advice is only valid if you're developers are using Microsoft's .net 3.5 Framework
I was quite happy with the Enterprise Manager of 7.0 and 2000. I kind of liked the ideas of MMC snapins. As long as you remembered to hit refresh, it wasn't that bad.
The new 2005 Management Studio is ok too. I see no point in choosing anything else. I fail to see the grand improvement that could justify a move for me. Everybody seems to use the stuff that comes with SQL Server, and compared to the stuff that comes with Oracle, it is pretty good. Oracle developers have more choice, and it is no mystery!
Books Online is great, and has been since 7.0.
My favourite part about Query Analyzer is and has always been the execution plan view. It's such a Good Thing!
Every new version of SQL Server has a lot of new stuff, but sadly some stuff gets dropped too. I think it's sad that English Query is gone. I never found a project for it, pushing it in Norway was part of the problem, but I thought it was brilliant.
I have tried a handful of them including TOAD, ApexSqlEdit and a couple of others. The problem with all of them is that while they include great features Management Studio is missing they also lack critical features Management Studio already has, I always found myself with two windows open, my third party editor and Management Studio. This is one area where I think Red-Gate has really nailed it, they don't try to replace management studio, just make up for it's deficiencies by extending it, adding intellisense, light refactoring, and code formatting. So far my favorite solution by quite a margin is Management Studio with RedGate SqlPrompt Pro added in for the intellisense and formatting which boost my productivity quite a bit.
SQL Server Management Studio 2008, when used against a SQL Server 2008 database, supports Intellisense for SQL Queries. Nuff said!
edit: sorry, didn't realize you said SQL 2005. Eh, I like SSMS 2005 as well.
I, for one, would definitely like something other than Management Studio. Is it just me, or do other people feel that it is wayyyyy slower than SQL Server 2000's Enterprise Manager? More features or not, I need something that can get the job done quickly.
I was having issues determining how to set up user permissions on SSMS. Eventually I accidentally ran into the correct way to do it and it works nicely now. I never used any tools previously for SQL Server so I can't compare but I think this does everything I need it to at the moment.
Anything is better than the tripe called SQL Server Management Studio. Sorry, but it's plain awful for us non-DBA guys. Maybe you DBA and programmer types like it, but it's a major PITA for those of us who are just the Server guys who schedule backups and such. It's slow. SLOW. And the Maintenance Plan interface is a living nightmare of bugs and gotcha's. Enterprise Manager wasn't perfect, but it was far, far easier to use than SSMS.
It really reminds me of Visual Basic 4 compared to VB3 - MS was trying to go in the right direction, they just did a really poor job. Of course, we eventually got VB6, so maybe in MSSQL Server 2011 we'll have something decent again. But for now, I just wish I could run Enterprise Manager against my SQL2005 servers, as SMSS makes me batty.
However, I haven't yet had any problems running the Query Manager from 2000 against my 2005 servers, at least not for the simple queries I do. At least that still works.
Management Studio is imperfect, and has a few bugs but I find it FAR and away better than the old 2000 tools. No contest. I use SSMS 2008 to manage all my servers including the SQL Server 2000 (ack!) instances.
Even with its warts, I have yet to see someone create a tool that is better for what it does - nobody probably has time to (re)build out every feature.
My 2 cents.
Yes, but they have almost always had their own problems.
Out of all of them, I used Toad for quite a bit, but found it to be a bit less responsive compared to Management studio. Maybe it was the building of intellisense (which was also very picky - it always required me to put in the Database.owner. prefix and had trouble with aliases), but it just didn't feel as comfy.
Back to SQLMS...