我们已经知道 MySQL 使用 SQL SELECT 命令及 WHERE 子句来读取数据表中的数据,但是当提供的查询条件字段为 NULL 时,该命令可能就无法正常工作。
为了处理这种情况,MySQL提供了三大运算符:
IS NULL: 当列的值是 NULL,此运算符返回 true。
IS NOT NULL: 当列的值不为 NULL, 运算符返回 true。
<=>: 比较操作符(不同于=运算符),当比较的的两个值为 NULL 时返回 true。
2024年10月07日
我们已经知道 MySQL 使用 SQL SELECT 命令及 WHERE 子句来读取数据表中的数据,但是当提供的查询条件字段为 NULL 时,该命令可能就无法正常工作。
为了处理这种情况,MySQL提供了三大运算符:
IS NULL: 当列的值是 NULL,此运算符返回 true。
IS NOT NULL: 当列的值不为 NULL, 运算符返回 true。
<=>: 比较操作符(不同于=运算符),当比较的的两个值为 NULL 时返回 true。
2024年10月07日
前面说过在这家跨境电商公司用opencart做外贸独立商城,好处当然是后台非常简洁如图1,速度对我们这种中小型外贸电商公司而言买不起高档配置的条件下的理性选择,但是后台太简洁了以至于很多实用功能都没有,我现在就碰到了个问题,公司现在业务还可以用上了专门的外贸电商erp系统,很多数据来源是导入导出的excel表格,老板要求我们外贸自建站商城的订单资料也要导出成excel表格,方便他们再导入外贸电商erp系统再做后续处理如发货之类的。
当然网上包括官网上opencart导出批量订单excel的插件很多,包括我们自己的自建站商城系统也买了付费版的opencart导入导出插件“ExcelPort 3.0.1”如图2所示
2024年10月07日
当进程数过多时,多进程插入mysql数据库表,超过了mysql最大连接数,就会报错,插入就会有失败的情况。想通过进程间通信来控制一下连接数,
实现了一下,利用共享内存来存放mysql的连接数,当某个进程在获取信号量后,尝试去连接数据库之前,先判断一下,当前的连接数是否超过了预定的阈值,如果没有,就连接数据库,连接成功后,连接数加一,立马释放信号,等操作数据库完毕后,进程再次阻塞,来获取信号,然后把连接数减一,释放信号量后,进程退出。
这样就可以控制有mysql的连接数不会达到上限,程序不会出现连接数据库失败的情况。当然我可以直接少fork一些进程,本人就是觉得要折腾一下。不然进程通信就懵逼了。而且也不会有以下的问题出现。
2024年10月07日
PHP+MYSQL将所有MyISAM表批量转为InnoDB表,将其中的数据库名称改为自己实际应用的名字,同时这里又增加了表名以mdaima_zichan开头的匹配,因为我这个数据库下有好多表,功能不同只更改需要的同一应用下的MyISAM表。
//0 ===================数据库更改引擎为innodb----开始
$sql="SELECT TABLE_NAME FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_SCHEMA = '数据库名称' AND ENGINE = 'MyISAM' and TABLE_NAME like 'mdaima_zichan_%'";
$result=$mysqli->query($sql);
$de=0;
while($rs=$result->fetch_assoc()){
$de++;
$tb_inodb = $rs["TABLE_NAME"];
$sqlinodb = "ALTERTABLE".$tb_inodb." ENGINE=INNODB";
$mysqli->query($sqlinodb);
//echo $sqlinodb."<br/>";
}
echo "数据库更改引擎为innodb,更新完成!共处理 ".$de." 个表,".date("Y-m-d H:i:s")."<br />";
//0 ===================数据库更改引擎为innodb----结束
2024年10月07日
原文地址:http://niuzheng.net/index/articleinfo/id/91.welcome
有一个这样的需求,通过选择的时间段导出对应的用户访问日志到excel中, 由于用户量较大,经常会有导出50万加数据的情况。而常用的PHPexcel包需要把所有数据拿到后才能生成excel, 在面对生成超大数据量的excel文件时这显然是会造成内存溢出的,所以考虑使用让PHP边写入输出流边让浏览器下载的形式来完成需求。 通过以下的方式写入PHP输出流
2024年10月07日
在 PHP 中,可以使用 MySQL 扩展(mysqli 或 PDO)来连接和操作 MySQL 数据库。下面是一些常见的 MySQL 操作:
2024年10月07日
昨天在做项目时,遇到几个小问题,今天总结一下分享给大家。
问题1:MySQL中select查询语句中多了空格,导致报语法错,但是很难发现问题。
正常语句:"select * from table group by name order by id"
错误语句:"select * from table group by name order by id"
对比上面两个语句,错误语句中在from后边可能敲代码时多打了一个空格,导致语法错误。在众多代码中很难发现。这个虽然不是什么高大上问题,但是一旦遇到很头疼。
2024年10月07日
大家好,好久没更新了,今天给大家带来新的内容使用PHP访问MySQL并显示MySQL中的数据(适合新手)。
以下是所用到的软件:
sublime text3(编程所用)
phpStudy(本地环境)
phpmyadmin(网页数据库管理)
所用到的知识:
2024年10月07日
我们继续 MySQLi 扩展的学习,上篇文章中提到过,MySQLi 的扩展相对于 PDO 来说功能更加的丰富,所以我们依然还会在学习过程中穿插各种 MySQLi 中好玩的方法函数。不过,今天的主角是 MySQLi 中如何执行 SQL 语句以及多条 SQL 语句的执行。