加入收藏在线咨询
位置:主页 >

八达国际668da:在MySQL数据库中执行SQL语句时的几个注意点

作者:dudu时间:11月23日浏览:


在履行查找敕令时的大年夜小写问题

默认环境下,MySQL在履行查找时不区分字母的大年夜小写。当你在查找时应用like 'a%'时, 默认将返回以a或者A开首八达国际668da的所有列值,若要在查找时区分大年夜小写,则必要应用collate运算符来实现,具编制子如下:

col_name COLLATE latin1_general_cs LIKE 'a%'

col_name LIKE 'a%' COLL八达国际668daATE latin1_general_cs

col_name COLLATE latin1_bin LIKE 'a%'

col_name LIKE 'a%' COLLATE latin1_bin

假如想让某列在查找时始终维持区分字母大年夜小写,则必要用case sensitive或bin八达国际668daary collation来定义列的特点。

当进行简单对照运算,如>=, >, =, 和空值NULL相关的问题

空值的观点对照轻易肴杂,有人觉得空值NULL和空 字符''是一会时,着实这样觉得是差错的,举例来说,

mysql> INSERT INTO my_table (phone) VALUES (NULL);

mysql> INS八达国际668daERT INTO my_table (phone) VALUES ('');

上面两条语句有完全不合的意义和结果。第一句表示,向表中插入的记录中的某人的电话号码NULL,意思是还不知道这 笔记录中的人的电话号码,而第二句向表中插入''空字符,就意味着已经知道表中这笔记录中的人的电话号码,这个电话号码 是'',也可以确定此人没有正常的电话号码。

赞助处置惩罚空值NULL的措施,主要经由过程履行is null运算判断,is not null运算 判断,和IFNULL()函数运算来实现。在SQL中,任何与NULL发生运算关系的结果都弗成能为真(即永世是假)。为了探求NULL值 ,必须履行is null测试运算。

可以在MyISAM, InnoDB, BDB或MEMORY等存储类型的表列中含有空值时添加index,但该 index必须声明成not null,这样之后将弗成以往该列中输入空值。

当应用load data infile语句载入数据时,空值NULL将 被调换成''。应用DISTINCT, GROUP BY, 或ORDER BY时所有空值将被视为等同。像COUNT(), MIN(), SUM()等概要总结函数将轻忽空值NULL。

但对一些特殊类型的列来说,比如timestamp类型和具有auto_increment属性的列:前者插入NULL是实际将插入当前光阴值,向后者插入NULL八达国际668da时将是下个正整数序列。(51CTO.COM教程)

电话:13866999966
联系人:王经理
Q Q:88996699
邮箱:admin@dede58.com
地址:中国XX省XX市XX路XX号