Copy link to clipboard
Copied
Hello to all out there. I am new to Cold Fusion and I am new to SQL as well. But it is never too late to learn, right? Thanks for viewing my post.
I am studying all 3 of Ben Forta's latest books, and SQL too. And I will hopefully soon be getting started on a web application that is ecommerce. I also am an iPhone developer and plan to make an app for the ecommerce sight I will be building.
With that being disclosed, my question falls with SQL or MySQL. Which should I use? And mind you that I am new to SQL all together, I just want to be sure and start my journey using the SQL application that is the best for the long haul. MySQL seems to be very prevelant out there and of course is very affordable...but will MySQL be right for an ecommerce web sight? Ben's books are focused on SQL, and so you can see my quandry.
I appreciate any suggestions that you might have as well as any Pros or Cons that you would like to make me aware of.
Copy link to clipboard
Copied
If you can go for either, I'd go for SQL Server *every single time*. Every time I have the misfortune to come across MySQL I end up angry, normally because it's to fix some ridiculous issue that should never have come around, and all you find on the net are lists and lists of bugs people have found. Granted it's been around a while, but at the end of the day it's open source. Backups and restores can also be an issue if you start using INNODB tables without making changes beforehand, it's just one of those technologies which you really can't administer without a good knowledge.
People tend to get into MySQL for one of three reasons; they're either using unix, they're using PHP, or they want something free.
ColdFusion tends to be hosted on Windows servers, so that's that one out the window. If you're using CF then you're unlikely to be running PHP, and Microsoft now do SQL Express, a completely free version of SQL Server from which you can upgrade to anything up to a multi-homed redundant SQL cluster without having to change a letter of your CF code. SQL Express comes with Management Studio Express, which is the usual MS point-and-click haven - you don't need to know what you're doing to right-click a database and select "Backup Database"; it's just common sense.
I've used MySQL before and whilst it's fine for bolting onto out-the-box forums and the suchlike, it can fast become a nightmare if you start having issues.
I hope by unbiased, objective opinions have helped.
O.
PS in case you haven't noticed, I hate MySQL.
Copy link to clipboard
Copied
PS in case you haven't noticed, I hate MySQL.
What exactly are you trying to say here?
--
Adam
Copy link to clipboard
Copied
Don't confuse the name of the language with the name of popular products that utilize the languge.
SQL the language is based on the SQL 92 standard. Pretty much all database management systems make use of this language with relatively minor variations.
MSSQL, MySQL, Oracle, etc are just the product names of popular database management systems that make use of this standard.
For a beginner, any of them would be fine. If you start getting different levels of applications the differences and the pros and cons of the different systems will start to matter, but this is mostly in the management and maintance of the database and data storage. Accessing the data and manipulating it with SQL the language is at least 90% the same on all of them.
Copy link to clipboard
Copied
Either database is just fine for your technical needs. You can always
install both and test them out, see which UI makes more sense to you.
My biggest suggestion is to do some thorough research on security in
ColdFusion. Especially doing ecommerce. Learn about sql Injection, cross
site scripting, etc.
A nice presentation is here
http://tv.adobe.com/watch/max-2010-develop/securing-coldfusion-applications/
Copy link to clipboard
Copied
Joshua,
Thanks for the help.
I have read on these topics in Ben Forta's publishings. You are very right on this. This is my priority number one for the ecommerce sight.
"If it ain't secure, then I don't want it!"
Copy link to clipboard
Copied
You seem to have neglected what I consider to be the most important part of application development - database design. The better you are at this, the easier everything else is. If you don't understand the concepts of a normalized database, I have heard good things about the book, Database Design for Mere Mortals.
Copy link to clipboard
Copied
Thanks.......
I have relational database experience, and SQL is no major hurdle for me as far as I can see at this point in my readings. Between my Visual Basic and Objective-C experiences, I find SQL very cool and actually looks like it is going to be a fun lesson. But scalability and security run on the top of my priorities.
As for certifications, I am a freelance programmer (just for my employer) and I guess I should start considering certifications just in case I ever need to go and ask for a raise!
Copy link to clipboard
Copied
You're right in that it's quite a fun challenge - much as it's not something I'd use to chat up girls in bars, I really enjoyed learning SQL. Just remember, if you've got the same piece of info in more than one place, you've failed
As long as you don't do that, scalability will not be an issue - a well-designed database works as well with two rows as it does with two million. As long as you've remembered your indexes
"Just in case" you need a raise? Why would you ever *not* need a raise?
Copy link to clipboard
Copied
Very good video to watch Joshua. I will sit down and view it all the way thru tonight instead of watching the Simpsons!
Thanks for the link, it is exactly what I was wanting to see....
Copy link to clipboard
Copied
Thanks for the prompt relies, I appreciate the assistance.
I have been reading a lot of web sights on the various SQL applications, and I was leaning towards SQL Express. I seems to be where I need to go. I will follow up on this more now that it seems to have some credible support.
My only objectives here are too learn a new set of applications "correctly" the first time, and not have to go back and train this old dog a new trick later. And of course do it in a cost effective manner.
Thanks again for your suggestions.
Copy link to clipboard
Copied
There's one other thing I did forget to mention - is this in any way going to be part of your future career plans? With the SQL Server route you've got countless MCITP qualifications you can go for, with a pretty much endless path of examination, certification and general pain for which you will be rewarded with much silver.
With MySQL I think it's fair to say there's less of that (I'm not saying you can't get paid for MySQL, before the open source guys lynch me), but I think it's more likely that a company will require a "MySQL Developer" as a rather wooly term, but many will pay extra for qualified SQL Server guys. Bear in mind that from next June (I think it is) Microsoft are changing the way they work their partner scheme; at present you can have a guy who sits in the corner doing exams, slap some cash Microsoft's way and become a Gold Partner. They're doing away with that, and moving to a scheme whereby you have to have several different technologies covered across your company, and *each technology* must be covered by a *different* person.
Almost certainly this'll lead to a greater demand for qualified Microsoft personnel, although obviously this is just speculation.
It's not necessarily a concern for you, but it's something to consider.
Adam - I was roughly saying "Open Source FTW", but in a roundabout way.
O.