MysqlでUnique設定する為にググっていたら
↓のエントリを発見した。
●MySQL では unique key が NULL を無視する
(http://d.hatena.ne.jp/kwatch/20090204/1233763466)
[MySQL では unique key を指定していても NULL があると無視されるようだ。]
とのことなので、一回試してみた。
(↑とほとんど中身一緒です。)
create table test(
pid integer primary key auto_increment,
tid text,
uid datetime,
unique key (tid, uid)
);
insert into test values(null, 'aaa', null);
mysql> select * from test1;
+----+------+------------+
| pid | tid | uid |
+----+------+------------+
| 1 | aaa | NULL |
| 2 | aaa | NULL |
| 3 | aaa | NULL |
+----+------+------------+
オラクルも同じとのことだったので
こちらも同様にやってみたら・・・・マジですよ(-д-;
ちなみにSQLの標準仕様なのだそう
null=null は偽なので、筋が通ってると言えば通ってるんですが・・・
でも、なんとなく不思議な気がします。
とりあえずUniqueキーを設定する時にはNot NULL設定にするのが良さそうです。
今度、暇な時をみてpostgresでもやってみよう。
で、せっかくなので旦那にもSQLサーバーで試してみてもらってみよう。
便利だな~、MS旦那♪(モビルスーツではない)
![ペタしてね](https://stat.ameba.jp/blog/ucs/img/decoPeta/pc/decoPeta_09.gif)
あ、ちなみに私が調べたかったのはド初級の
create table tablename(
・
・
・
`field3` VARCHAR(45) UNIQUE , #識別子(ユニークで!)
・
・
・
);
ってトコロですwwww
久々すぎてド忘れですよwww
それよかMobaSiFがホンマにワケ分からん。
なんでMobaSiF??
つーか提示されてる案件にMobaSiFの仕様があっとらん!
せめてCatalystに変えてくれ~(TдT)