I’m having a slight terminology meltdown as I design some classes. In Sql Server 2005, ‘schema’ refers to a namespace, and an organizational system for database objects. But for relational databases in general, ‘schema’ means the DDL design of tables, fields, etc. If I’m right about this, it explains a lot of the dissonance when I am trying to read microsoft documentation, and understand the various data access APIs. Can you explain what’s going on here, is there really that much difference in the definition of ‘schema’?
Share
Yes, the word ‘schema’ unfortunately has become overloaded among database vendors.
‘SQL-99 Complete, Really‘ says:
Oracle uses ‘schema’ and ‘user’ interchangeably, which always makes my eyebrows raise.
MySQL uses
SCHEMAas a synonym forDATABASE.PostgreSQL uses ‘schema’ but uses ‘database’ to refer to what standard SQL calls a ‘catalog.’