MYSQL删除数据库记录为空

admin6年前IT技术1421

delete from  name where fy_cn is NULL || LENGTH(trim(fy_cn))=1

 

MySql判断是否为null或空字符串  

判断方法:

 if  ISNULL(aBegBalRule) || LENGTH(trim(aBegBalRule))<1 THEN

 

ELSE

END IF;

 

 

NULL值可能令人感到奇怪直到你习惯它。概念上,NULL意味着“没有值”或“未知值”,且它被看作与众不同的值。为了测试NULL,你不能使用算术比较 操作符例如=、<或!=。为了说明它,试试下列查询:

mysql> SELECT 1 = NULL, 1 <> NULL, 1 < NULL, 1 > NULL;
+----------+-----------+----------+----------+
| 1 = NULL | 1 <> NULL | 1 < NULL | 1 > NULL |
+----------+-----------+----------+----------+
|     NULL |      NULL |     NULL |     NULL |
+----------+-----------+----------+----------+

很显然你不能通过这些比较得到有意义的结果。相反使用IS NULL和IS NOT NULL操作符:

mysql> SELECT 1 IS NULL, 1 IS NOT NULL;
+-----------+---------------+
| 1 IS NULL | 1 IS NOT NULL |
+-----------+---------------+
|         0 |             1 |
+-----------+---------------+

请注意在MySQL中,0或 NULL意味着假而其它值意味着真。布尔运算的默认真值是1。

对NULL的特殊处理即是在前面的章节中,为了决定哪个动物不再是活着的,使用death IS NOT NULL而不使用death != NULL的原因。

在GROUP BY中,两个NULL值视为相同。

执行ORDER BY时,如果运行 ORDER BY ... ASC,则NULL值出现在最前面,若运行ORDER BY ... DESC,则NULL值出现在最后面。

NULL操作的常见错误是不能在定义为NOT NULL的列内插入0或空字符串,但事实并非如此。在NULL表示"没有数值"的地方有数值。使用IS [NOT] NULL则可以很容易地进行测试,如下所示:

mysql> SELECT 0 IS NULL, 0 IS NOT NULL, '' IS NULL, '' IS NOT NULL;
+-----------+---------------+------------+----------------+
| 0 IS NULL | 0 IS NOT NULL | '' IS NULL | '' IS NOT NULL |
+-----------+---------------+------------+----------------+
|         0 |             1 |          0 |              1 |
+-----------+---------------+------------+----------------+

因此完全可以在定义为NOT NULL的列内插入0或空字符串,实际是NOT NULL。

相关文章

设置apach多站点的配置方法

 Include conf/vhost/*.conf...

centos7 通过ssh 登入系统慢的解决方法

centos7 通过ssh 登入系统慢的解决方法

前几天更新了centos7 ( 树莓派3b+硬件环境),发现 ssh登入时间很长,还以为sd 卡出现故障。通过排查不是硬件故障。而是由于ssh的配置文件开启了UseDNS功能 。服务器会先根据客户端的...

LINUX-centos7服务器环境安装的那些坑

LINUX-centos7服务器环境安装的那些坑亲自测试能用的第一步 安装php一定要加上--skip-broken,否则根本无法安装,依赖的程序实在是太多了,我走过这个弯路; yum -y...

如何不借助任何外在工具快速下载Facebook视频[转]

如何不借助任何外在工具快速下载Facebook视频[转]

Facebook是美国知名的社交媒体平台,其独特的图像与视频分享功能深受广大粉丝的喜爱。如果你也是FB粉,或者仅仅是喜欢别人分享的一些有趣的视频,想要下载下来却也不知如何操作,那么这篇帖子可以帮到你。...

KindEditor得不到textarea值的解决方法

  下面以 KindEditor 4.x 版本为例说明,先贴上正确的代码:         &nb...

1.解压缩

将下载到本地的安装介质解压缩。然后,将解压后的文件夹mysql-5.7.16-winx64拷贝到安装目录(E盘根目录)下。

2.设置系统环境变量

右键点击 计算机>>属性>> 高级系统属性>>环境变量>> 编辑 Path ,在最后添加” ;E:\mysql-5.7.16-winx64\bin“,确定。

3.创建my.ini 文件和data目录,配置安装路径与数据存储路径

在E:\mysql-5.7.16-winx64目录下创建data目录和my.ini,并在my.ini中配置安装路径与数据存储路径等信息。

点击(此处)折叠或打开

  1. [mysql]
  2. default-character-set=utf8
  3. [mysqld]
  4. max_connections=200
  5. default-storage-engine=INNODB
  6. basedir =E:\mysql-5.7.16-winx64\bin
  7. datadir =E:\mysql-5.7.16-winx64\data
  8. port = 3306

 

4.安装MySQL服务

首先,以管理员身份运行 cmd 并切换到MySQL的bin目录下;

接下来,执行mysqld --initialize-insecure

    这条命令用来初始化data文件,其中insecure选项指定登录无需口令。

点击(此处)折叠或打开

  1. D:\>e:
  2.  
  3. E:\>cd mysql-5.7.16-winx64
  4.  
  5. E:\mysql-5.7.16-winx64>cd bin
  6.  
  7. E:\mysql-5.7.16-winx64\bin>mysqld --initialize-insecure
  8.  
  9. E:\mysql-5.7.16-winx64\bin>

需要注意的是,如果不指定insecure选项,则会随机生成登陆密码, 在E:\mysql-5.7.16-winx64\data文件夹下,有一个 hoegh.err 文件,其中hoegh是主机名,打开会看到:
2016-10-20T09:34:56.806257Z 1 [Note] A temporary password is generated for root@localhost: p-mcI:ijR6Xg,
其中 p-mcI:ijR6Xg即为随机密码。

然后,输入 mysqld --install安装MySQL服务

我们会看到界面出现:Server successfully installed,这就说明MySQL服务安装成功。 

点击(此处)折叠或打开

  1. E:\mysql-5.7.16-winx64\bin>
  2.  
  3. E:\mysql-5.7.16-winx64\bin>mysqld --install
  4. Service successfully installed.
  5.  
  6. E:\mysql-5.7.16-winx64\bin>

5.启动MySQL服务

输入  net start mysql  回车, 就会看到: MySQL 服务已经启动成功。尝试使用root用户登录数据库,并通过show databases命令查看数据库概要信息。

点击(此处)折叠或打开

  1. E:\mysql-5.7.16-winx64\bin>
  2. E:\mysql-5.7.16-winx64\bin>net start mysql
  3. MySQL 服务正在启动 .
  4. MySQL 服务已经启动成功。
  5.  
  6.  
  7. E:\mysql-5.7.16-winx64\bin>mysql -u root
  8. Welcome to the MySQL monitor. Commands end with ; or \g.
  9. Your MySQL connection id is 2
  10. Server version: 5.7.16 MySQL Community Server (GPL)
  11.  
  12. Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved.
  13.  
  14. Oracle is a registered trademark of Oracle Corporation and/or its
  15. affiliates. Other names may be trademarks of their respective
  16. owners.
  17.  
  18. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
  19.  
  20. mysql> show databases;
  21. +--------------------+
  22. | Database |
  23. +--------------------+
  24. | information_schema |
  25. | mysql |
  26. | performance_schema |
  27. | sys |
  28. +--------------------+
  29. 4 rows in set (0.00 sec)
  30.  
  31. mysql>

 

6.修改root密码

    安全起见,我们修改一下root密码。

点击(此处)折叠或打开

  1. mysql>
  2. mysql> alter user 'root'@'localhost' identified by 'root';
  3. Query OK, 0 rows affected (0.00 sec)
  4.  
  5. mysql>
  6. mysql> exit
  7. Bye
  8.  
  9. E:\mysql-5.7.16-winx64\bin>mysql -u root -proot
  10. mysql: [Warning] Using a password on the command line interface can be insecure.
  11. Welcome to the MySQL monitor. Commands end with ; or \g.
  12. Your MySQL connection id is 4
  13. Server version: 5.7.16 MySQL Community Server (GPL)
  14.  
  15. Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved.
  16.  
  17. Oracle is a registered trademark of Oracle Corporation and/or its
  18. affiliates. Other names may be trademarks of their respective
  19. owners.
  20.  
  21. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
  22.  
  23. mysql> show databases;
  24. +--------------------+
  25. | Database |
  26. +--------------------+
  27. | information_schema |
  28. | mysql |
  29. | performance_schema |
  30. | sys |
  31. +--------------------+
  32. 4 rows in set (0.00 sec)
  33.  
  34. mysql>


MySQL数据库可以用任意ip连接访问的方法

 

过CMD命令行修改

MYSQL安装

  今天在Windows Server 2008 r2系统下部署了MySQL Community Server 5.7.16,安装过程中也遇到了一些问题,在这儿记录一下最终的安装过程。0.下...

发表评论    

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。