加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MsSql教程 > 正文

sql – 数据库不可知应用程序的数据库设计

发布时间:2020-12-12 16:39:38 所属栏目:MsSql教程 来源:网络整理
导读:在应用程序的数据库设计中,我必须考虑什么才能够支持最常见的关系数据库系统(SQL Server,MySQL,Oracle,PostgreSQL …)? 这甚至值得吗?什么是陷阱? 解决方法 简单的答案是坚持标准化或接近标准实现的功能.这意味着更详细的是: 避免使用数据库的过程语言(存
在应用程序的数据库设计中,我必须考虑什么才能够支持最常见的关系数据库系统(SQL Server,MySQL,Oracle,PostgreSQL …)?

这甚至值得吗?什么是陷阱?

解决方法

简单的答案是坚持标准化或接近标准实现的功能.这意味着更详细的是:

>避免使用数据库的过程语言(存储过程或触发器)的任何东西,因为这是系统之间巨大差异的地方.您可能需要使用它们来模拟某些功能,但不要使用它们来创建自己的功能.
>从字段本身分离自动递增字段的序列.这将看起来有点被迫用于MSSQL,但将在Oracle,DB / 2等中实现干净,而无需任何仿真修复.
>将char和varchar字段保持在您所针对的一组引擎的最小最大大小之下.
>当您编写查询时,使用完整的JOIN语法,并括起JOIN,以便每个连接位于单个表和括号之间的表达式之间.
>将日期处理逻辑保留在代码中,而不是查询,因为大量的日期函数不在标准之内. (例如:如果您想在过去两周内获取内容,则会在两周前的代码中计算日期,并在查询中使用该日期.)

除此之外,所涉及的努力不应该太吓人,所以这可能是值得的.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读