MS Server和Oracle中对NULL处理的一些细节差异

来源:asp之家 时间:2009-06-10 17:35:00 

INSERT INTO Table (TestCol) VALUES(‘')

其中的TestCol字段,其实在设计的时候,已经被设计为NOT NULL,但我们需要了解一点,在sql server中,null和空格是不同的,也就是说,上面的语句插入的是一个空,但并不是NULL,只有当我们的插入语句中没有该字段的时候,才会被认为违反非空的条件约束,这里可能用英文的表达可能会更加的准确一些,如果把NULL翻译成“空”的话,可能就会很容易搞混了。此外,如果我们的字段是INT类型的话,如果我们插入空的话,会得到一个0,也就是说,MS Sql server会自动帮我们处理对空格的转化。

但是在Oracle中,这个便利便不存在咯,我们必须严格按照规则来进行插入,也就是说,我们再想视图通过插入空来满足NOT NULL的设计约束,已经不能成功啦,我们必须插入实实在在的内容才能符合NOT NULL的约束。

像类似地一些细节在我们设计既要满足MS Sql,又要满足Oracle的系统地时候,尤其会成为我们需要处理的家常便饭,这一方面要求我们要严格规范我们的sql脚本,再者也要对程序处理语句进行严格的条件控制才行,否则类似地问题在联调的时候会让我们陷入一个接着一个的噩梦~

标签:MSServer,Oracle,细节
0
投稿

猜你喜欢

  • 关于DOM元素定位属性的深入学习

    2008-04-02 11:46:00
  • ASP中Session技巧 默认过期时间为20分钟

    2012-12-04 20:28:26
  • 简化的CSS Reset — 常用CSS重设实例

    2009-03-11 16:46:00
  • 内容页页码的预览导航

    2008-07-07 16:43:00
  • ASP向SQL语句传递参数方法

    2008-04-13 06:07:00
  • 最简便的备份MySQL数据库的方法

    2008-12-25 13:16:00
  • 36个折纸风格logo设计

    2009-09-17 13:13:00
  • asp如何做一个看他爱不爱你的小测验?

    2010-07-11 21:16:00
  • SQL Server 2005中数据库镜像的四个问题

    2009-02-19 16:48:00
  • Asp中如何快速分页的技巧

    2008-05-17 12:02:00
  • asp在sql server2000中新建帐号和给帐号权限代码

    2008-01-29 13:46:00
  • 网页设计的十大戒律

    2008-08-10 17:55:00
  • Session.TimeOut的最大取值是1440,超出会报错

    2011-03-31 11:19:00
  • 标签水平右对齐更适合中文网站

    2009-05-01 11:54:00
  • 用css3-tranistions实现平滑过渡

    2009-12-23 19:24:00
  • 新功能的帮助与破坏

    2010-01-17 10:15:00
  • form 元素内的字段 name 不要跟 form 属性名称一致

    2008-10-22 13:25:00
  • ASP.NET中MD5和SHA1密码保护算法的使用

    2007-08-24 09:18:00
  • 不错的广告定位效果代码

    2009-06-05 18:51:00
  • 教你怎么使用sql游标实例分享

    2012-07-11 16:14:57
  • asp之家 网络编程 m.aspxhome.com