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

2016-02-19 09:22 1 1 收藏

每个人都希望每天都是开心的,不要因为一些琐事扰乱了心情还,闲暇的时间怎么打发,关注图老师可以让你学习更多的好东西,下面为大家推荐MS Server和Oracle中对NULL处理的一些细节差异,赶紧看过来吧!

【 tulaoshi.com - 编程语言 】

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脚本,再者也要对程序处理语句进行严格的条件控制才行,否则类似地问题在联调的时候会让我们陷入一个接着一个的噩梦~

来源:https://www.tulaoshi.com/n/20160219/1590542.html

延伸阅读
标签: 生活常识
改造小细节让生活中多一些绿色 生活在城市里的我们,无法避免被钢筋水泥包围,于是生活中出现的每一点绿色都值得我们珍惜。既然不能选择环境,那就用自己的双手创造环境。注意你生活中的小细节:废弃的酒瓶,不看的书都可以成为小绿们容身的地方;改造一下屏风和桌子,你的生活中就能轻松多一些绿色。 想要家里多一点绿?跟着学 ...
标签: SQLServer
1、插入记录 insert into tableName (myColumn1,myColumn2) values (@myVal1,@myVal2) 2、删除记录 delete from tableName where myColumn=@myVal 3、修改记录 update from tableName set myColmn1=@myVal1 , myColmn2=@myVal2 where myColmn3=@myVal3 4、为表增加列 alter table myTable add myColumn int default 0 5、删除表中的列 ...
首先说明这里指的是Java中的String,虽然我已经决定转战C/C++了,但是因为今天碰到一个问题,还是来看一下。String的定义如下: 代码如下: public final class String { private final char value[]; // 保存的字符串 private final int offset; // 开始的位置 private final int count; // 字符数目 private int hash; // 缓存的hash...
tulaoshi 避免误入雷区 孕前五个生活小细节须知 孕育 宝宝 可是一件大工程,备孕准备当然必不可少。很多想要宝宝的 女性 来说,备孕要做哪些准备可能感觉一头雾水,图老师小编偷偷告诉你哟,女性的孕前调理包括饮食、起居、运动、护理等各方面的调节。当然生活中一些小细节万万不能忽视的哟。 一、时刻都...
一、当两个并发线程访问同一个对象object中的这个synchronized(this)同步代码块时,一个时间内只能有一个线程得到执行。另一个线程必须等待当前线程执行完这个代码块以后才能执行该代码块。 二、然而,当一个线程访问object的一个synchronized(this)同步代码块时,另一个线程仍然可以访问该object中的非synchronized(this)同步代码块...

经验教程

351

收藏

84
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部