database - 关于数据库,我需要了解什么?

标签 database database-design

总的来说,我认为在使用编程语言进行编码方面我做得很好,但我认为在数据库方面我缺少一些重要的东西。

我看到招聘广告要求了解 MySQL、MSSQL、Oracle 等知识,但我无法确定它们之间的差异。

你看,像许多新程序员一样,我倾向于将我的数据库视为数据的垃圾场。我所做的大部分工作都归结为相对简单的 SQL(插入这个,选择那个,删除这个_other_thing),它基本上独立于我使用的引擎(当然,除了一些小的异常(exception),主要是对语法的小调整)。

有人可以解释特定平台发挥作用的数据库的一些常见用例吗?

我确信存储过程之类的东西很大,但是 (a) 这些大多是用特定语言(T-SQL 等)编写的,这与特定 RDBMS 本身是不同的工作广告要求,并且(b) 我从各种来源听说存储过程即将淘汰,而且在很多情况下现在无论如何都不应该使用它们。我相信 Jeff Atwood 是这个阵营的成员。

谢谢。


The above concepts do not vary much for MySQL, SQL Server, Oracle, etc.

对于这个问题,我主要是想确定它们之间的重要区别。 IE。当大多数常见用例在 RDBMS 平台上相对稳定时,为什么招聘广告需要 n 年的 MySQL 经验。

CRUD 语句、连接、索引……所有这些在特定引擎的范围内都相对简单。如果您了解不同的 RDBMS,这些概念很容易转移。

我正在寻找的是会导致雇主指定特定引擎而不是“使用通用数据库引擎的经验”的细节。

最佳答案

我认为关于数据库的基本知识应该是:

上述概念在 MySQL、SQL Server、Oracle、Postgres 和 other relational database systems 之间差别不大。 .但是,对于现在流行的 NoSQL databases,您会发现一组不同的概念。 ,例如 CouchDB , MongoDB , SimpleDB , Cassandra , Bigtable , 和 many others .

关于database - 关于数据库,我需要了解什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2213815/

相关文章:

php - 如何记录商店的折扣信息?

php - 数据库变化检测

database - 相关对象应该分组在一个表中,还是多个表中?

动态场的 django 模型结构

database - MS Access 迁移的前端?

mysql - 数据库索引用于同一组列的多个查询组合?

database - 为什么lucene不需要复合索引,而关系数据库需要?

php - 后端+数据库设计

java - 在 MySQL 数据库中存储枚举

database - Firebird 2.1 在某些数据库表中存储大量行是否有效?