I am new to databases. I want to know why, when I create a schema, in MySQL it is a database, while in SQL Server it is a schema inside a database. Can anyone explain it to me?
Share
Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.
Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.
Lost your password? Please enter your email address. You will receive a link and will create a new password via email.
Please briefly explain why you feel this question should be reported.
Please briefly explain why you feel this answer should be reported.
Please briefly explain why you feel this user should be reported.
Because different vendors have different ways to describe, separate and delineate things and can even use the same words differently. MySQL for whatever reason (I think it is more inline with Oracle) calls schema and database the same thing, while SQL Server has a database that can contain multiple schemas. I don’t know if you can declare either of them “more right” it’s just a matter of knowing the differences, even if they aren’t intuitive. One could check the ANSI standards I suppose to see which is more inline with what the standards body intended.
I don’t know if you really have a shot at getting a legitimate answer to this question that will keep it on-topic, unless you can convince the MySQL and SQL Server team to come in and state why they chose the way they did (keeping in mind that the people who made these choices way back when are not likely to still be on their respective teams).