Microsoft SQL Server (a rant)

merrillmck

New Member
Messages
134
Reaction score
0
Points
0
So I'm creating my webpage and I found a template that I liked ... well it has a sample database. Rather than delete the references to the database, I decided I wanted to edit it and learn some SQL, for the first time, in the process.

Well error message after error message. Downloading 2005 and 2008 Microsoft SQL Servers. Getting warning messages I don't understand. Following fixes to errors via Google ... well I'm giving up. No SQL database for me.

Question: Those of you using SQL (Microsoft or not), how did you get started and what references brought you up to speed. Mind you, I'm stuck in the setup. I have yet to even view a database, edit one, or write some query to one. Is there anyone else out there who started trying to learn a little SQL and decided against it? Why use SQL anyway?
 

zen-r

Active Member
Messages
1,937
Reaction score
3
Points
38
For my quick test set up, I just installed using Fantastico (in cPanel).

It installed & set up everything for me.

If you did this, you would have some databases to experiment on.
 
Last edited:

misson

Community Paragon
Community Support
Messages
2,572
Reaction score
72
Points
48
Question: Those of you using SQL (Microsoft or not), how did you get started and what references brought you up to speed. Mind you, I'm stuck in the setup. I have yet to even view a database, edit one, or write some query to one. Is there anyone else out there who started trying to learn a little SQL and decided against it? Why use SQL anyway?

Why learn SQL? Because it's the biggest game in town. It's not the best language for the task (Edgar Codd, the formulator of RDB theory, is attributed as criticizing SQL as being an incorrect implementation of the theory), but all the major RDBMSs (Relational Database Managment Systems) use it. One problem is each DBMS has its own features, and thus includes its own extensions to SQL.

As for learning SQL, first study RDB theory and practice. You could try "Introduction to Databases and Relational Data Model" by Maurer and Scherbakov, which looks to be decent (and free). You could also pick one or more of the suggested books on one of the relevant Stackoverflow threads (2). Reading over Codd's "A Relational Model of Data for Large Shared Data Banks" will teach you the the basic ideas behind RDBs, though most of the subject is not covered in the short, 11 page paper.

In addition to learning RDB design and SQL, you also might want to learn a little about DB management. It sounds like the issues you're having with SQL Server all lie within this last realm of administration. The first StackOverflow thread has some suggestions for SQL Server administration.
 

merrillmck

New Member
Messages
134
Reaction score
0
Points
0
Why learn SQL? Because it's the biggest game in town. It's not the best language for the task (Edgar Codd, the formulator of RDB theory, is attributed as criticizing SQL as being an incorrect implementation of the theory), but all the major RDBMSs (Relational Database Managment Systems) use it. One problem is each DBMS has its own features, and thus includes its own extensions to SQL.

As for learning SQL, first study RDB theory and practice. You could try "Introduction to Databases and Relational Data Model" by Maurer and Scherbakov, which looks to be decent (and free). You could also pick one or more of the suggested books on one of the relevant Stackoverflow threads (2). Reading over Codd's "A Relational Model of Data for Large Shared Data Banks" will teach you the the basic ideas behind RDBs, though most of the subject is not covered in the short, 11 page paper.

In addition to learning RDB design and SQL, you also might want to learn a little about DB management. It sounds like the issues you're having with SQL Server all lie within this last realm of administration. The first StackOverflow thread has some suggestions for SQL Server administration.

I'm still missing the big picture.

Actually, the small picture is I wanted to use a webpage template that had a sample database but modifying the database gives me all sorts of errors I've unsuccessfully tried to fix by installing/reinstalling/uninstalling, modifying services, etc. I could post all the technical issues but this forum is less applicable to those problems.

If I wanted to sell widgets, why wouldn't I just code up a C# class for a widget and another C# class for a widget database that contains an array or list of widgets and then write all the methods/functions that I need?

Why would I use SQL for such a database? Is SQL an alternative for people trying to avoid writing in C#, Java, C++, or any other high-level software language?

Thanks for the documentation, I read over most of it (not the book of course), but I'm trying to figure out whether it makes sense to devote more time to the topic.
 

misson

Community Paragon
Community Support
Messages
2,572
Reaction score
72
Points
48
If I wanted to sell widgets, why wouldn't I just code up a C# class for a widget and another C# class for a widget database that contains an array or list of widgets and then write all the methods/functions that I need?
That will probably turn into a bigger project than you expect.

Why would I use SQL for such a database? Is SQL an alternative for people trying to avoid writing in C#, Java, C++, or any other high-level software language?
SQL is for people who want to use a DBMS. A DBMS is so you don't have to implement your own datastore. Here's some of what you get with an RDBMS and SQL:
  • data persistence
  • sharing data between sessions
  • data integrity, including when updated by parallel processes. Preventing anomalies is also dependent on the DB design, which means it's up to the designer.
  • access path independence (built in to the RDB model, but not arrays)
  • defining data structures (DDL)
  • fetching data, which includes arbitrary boolean search expressions and joining data from different structures to produce new structures (DML)
  • updating data (DML)
  • authentication and authorization for data access (DCL)
  • query optimization, including indexing
  • transactions
  • aggregate functions
  • stored procedures
A few of those items are easy to implement or built in to the host (programming) language or its libraries; many are not. Some DBMSs (notably, SQLite) don't provide all of those features fully.

Your current project might not need all those features, but consider that data storage in general is complex enough to warrant a separate, standalone solution.

Note that RDBs and SQL are not the only choices; they're just the most common. As an alternative to RDBs, consider Object Oriented DBs. There's also XML and XQuery, but current XML implementations don't scale well. Wikipedia lists other query languages.
 
Last edited:

merrillmck

New Member
Messages
134
Reaction score
0
Points
0
Thanks again for your response. Plenty to consider ...

... good news is I finally got all of my Microsoft SQL issues taken care of. There were multiple issues including "user error" but hopefully they are in the past. I can finally go look at all the Database Diagrams, Tables, Views, and Stored Procedures of a sample database that can then display in a template webpage.
 

nbwebmaster

New Member
Messages
36
Reaction score
0
Points
0
I learned how to use SQL from w3schools.com. They have an excellent tutorial for people looking to learn about databases, and all their tutorials show techniques for different databases, like mySQL, MSSQL Server, MS access.
 
Top