`

2015.03.24-mysql里面创建自定义函数配置,mysql登录密码忘记了怎么办,linux find,PHP mysql_num_rows警告

阅读更多
今日任务:
1.部门名称的校验
2.联调通讯录同步

实际:
部门名称校验规则:同一级的部门名称不能重复
client发送httpclient请求后,server能收到并返回通讯录内容


收获:
1.mysql的数据类型取值范围、效率, int +-21亿 占用4个字节,bigint是8个字节
2.如果在mysql里面创建自定义函数,首先需要开启函数支持
  set GLOBAL log_bin_trust_function_creators=1; #开启函数支持

但是mysql在重启后就失效了,最终的办法是在 /etc/my.cnf里面的[mysqld]下增加:
 log-bin-trust-function-creators=1

如果还是不行,报错:ERROR 1064(42000)那就是需要在函数里面增加定界符,如:
DELIMITER $$
DROP FUNCTION IF EXISTS getAllChildNodeId$$
CREATE FUNCTION getAllChildNodeId(rootId bigint) 
    returns varchar(1000)
begin
   DECLARE sTemp varchar(1000);
   DECLARE sTempChd varchar(1000);
   SET sTemp = '0';
   SET sTempChd =cast(rootId as CHAR);
   WHILE sTempChd is not null DO
      SET sTemp = concat(sTemp, ',', sTempChd);
      SELECT group_concat(ID) INTO sTempChd FROM DepartmentInfo where FIND_IN_SET(ParentID,sTempChd)>0;
   END WHILE;
   RETURN sTemp;
END$$
DELIMITER ;

3.如果mysql登录密码忘记了,可以修改mysql的登录设置:
修改MySQL的登录设置:
  # vi /etc/my.cnf
  在[mysqld]的段中加上一句:skip-grant-tables
  例如:
  [mysqld]
  datadir=/var/lib/mysql
  socket=/var/lib/mysql/mysql.sock
  skip-name-resolve
  skip-grant-tables
  保存并且退出vi。
  3.重新启动mysqld
  # /etc/init.d/mysqld restart
  4.登录并修改MySQL的root密码
  # /usr/bin/mysql  
  mysql> USE mysql; 
  mysql> UPDATE user SET Password = password ( ‘new-password’ ) WHERE User = ‘root’; 
  mysql> flush privileges ;
  mysql> quit

4.linux find命令: 
   find /etc -name 'php.ini'

5.linux下php和mysql在安装时没有安装扩展,后面需要时怎么办?
  为了使设备出厂时的环境一致性,采用集成环境镜像的方式安装软件运行环境

6.Warning: mysql_num_rows() expects parameter 1 to be resource, boolean given
  mysql_query()   仅对   SELECT,SHOW,EXPLAIN   或   DESCRIBE   语句返回一个资源标识符,如果查询执行不正确则返回   FALSE。对于其它类型的   SQL   语句,mysql_query()      在执行成功时返回   TRUE,出错时返回   FALSE。非   FALSE   的返回值意味着查询是合法的并能够被服务器执行.
  也就是说在用mysql_query()的时候,首先需要判断它执行的返回结果是否为true,再做其它操作,这样就可以避免这个错误了
对于普通的查询可以这样做:
$department_result = mysql_query($sql);
if (!$department_result || mysql_num_rows($department_result) == 0)
{
    error_log("no department result");
    return false;
}
 // 处理数据
分享到:
评论

相关推荐

    bootstrap-table实现 行拖拽 插件jquery.tablednd.js bootstrap-table-reorder-rows.js

    bootstrap-table实现 行拖拽 插件 jquery.tablednd.js bootstrap-table-reorder-rows.js bootstrap-table-reorder-rows.css

    github.com/go-sql-driver/mysql

    要使用`github.com/go-sql-driver/mysql`,首先需要在项目中导入该驱动,然后通过`sql.Open()`函数创建数据库连接。连接字符串通常包含数据库的地址、用户名、密码以及其它配置选项。例如: ```go import ( ...

    MySQL-python-1.2.3.win-amd64-py2.7

    MySQL-python-1.2.3.win-amd64-py2.7是一个针对Python 2.7版本的MySQL数据库连接库,专为64位Windows操作系统设计。这个库,也称为`MySQLdb`,是Python程序员与MySQL数据库交互的重要工具。在Python中,通过这个库...

    MySQL-python-1.2.3.win-amd64-py2.7.exe

    MySQL-python是Python编程语言与MySQL数据库之间的一个接口,它允许Python开发者轻松地访问和操作MySQL数据库。这个"MySQL-python-1.2.3.win-amd64-py2.7.exe"是一个安装程序,适用于64位Windows操作系统,并且是为...

    MySQL-python-1.2.3.win-amd64-py2.7.zip

    标题中的"MySQL-python-1.2.3.win-amd64-py2.7.zip"表明这是一个关于Python连接MySQL数据库的库,名为`MySQL-python`的版本1.2.3,专为64位(amd64)架构的Windows系统设计,并且兼容Python 2.7版本。这个压缩包文件...

    bootstrap-table-reorder-rows.js

    bootstrap-table-reorder-rows.js ,bootstraptable行拖动

    MySQL-python-1.2.5.win-amd64-py2.7.exe

    MySQL-python-1.2.5.win-amd64-py2.7.exe 是一个用于Python 2.7的MySQL数据库连接器的安装程序,适用于64位(AMD64)的Windows操作系统。这个安装包允许Python应用程序与MySQL数据库进行交互,无需用户进行额外的...

    bootstrap-table-reorder-rows.js.zip

    在本压缩包 "bootstrap-table-reorder-rows.js.zip" 中,核心文件是 "bootstrap-table-reorder-rows.js",这显然是用于实现 Bootstrap Table 的行重排功能。 Bootstrap Table 行内编辑功能允许用户直接在表格单元格...

    Python库 | mysql_corsair-0.0.6-py2.py3-none-any.whl

    《Python库mysql_corsair-0.0.6-py2.py3-none-any.whl详解》 在Python的开发世界中,数据库操作是不可或缺的一部分,而`mysql_corsair`库便是专为处理MySQL数据库而设计的一个高效工具。这个名为`mysql_corsair-...

    mysql-5.5.14.tar.gz

    -LH|more //CMake下查看MySQL的编译配置 cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DEXTRA_CHARSETS=all make make install chown -R mysql:mysql /usr/local/mysql cp support-files/my-medium...

    mysql.rar_linux mysql_linux mysql_mysql linux

    在Linux系统中,MySQL是一种广泛使用的开源关系型数据库管理系统,其稳定性和性能备受开发者青睐。本文将深入探讨如何在Linux环境下连接MySQL数据库,并提供相关的示例代码。 首先,确保你的Linux系统已经安装了...

    mysql-8.0.20-macos10.15-x86_64.tar.gz

    注意: 这儿执行完会生成mysql root账号的密码,后面在客户端连接时,5.7版本需要用到,自己别忘了记录下 类似这种: 其中 Wt#GeUu_q2oJ 就是root的密码。 [Note] A temporary password is generated for root@...

    mysql.class.php.zip_mysql.class.php_php mysql class

    8. **配置选项**:类库可能允许用户自定义配置,如连接超时时间、字符集等,这可能通过构造函数或 `setConfig()` 方法实现。 在使用此类库时,开发者需要先创建类的实例,然后调用相应的方法进行数据库操作。例如:...

    mysql-python安装包

    MySQL-Python是Python编程语言与MySQL数据库交互的一个库,它为Python程序员提供了访问MySQL数据库的能力。这个库在Python社区中通常被称为`mysqlclient`或`MySQLdb`,它是基于DB-API 2.0规范的。在Python环境中,...

    MySQL中文参考手册.chm

    3.6.4 扩展的登录支持 4 安装 MySQL 4.1 怎样获得MySQL 4.2 MySQL支持的操作系统 4.3 使用MySQL哪个版本 4.4 怎样和何时发布更新版本 4.5 安装布局 4.6 安装MySQL二进制...

    PHP操作mysql函数详解.pdf

    $i < mysql_num_rows($result); $i++) { $id = mysql_result($result, $i, "id"); $name = mysql_result($result, $i, "name"); echo "Product: $name ($id)"; } ``` - 对于查询结果中的别名字段,可以直接...

    net-mysql.rar_.NET MYSQL_MYSQL_c# mysql_list mysql_mysql示例

    在.NET开发环境中,MySQL是一种广泛使用的开源关系型数据库管理系统,其高效、稳定和灵活的特点使其成为许多开发者的选择。本文将详细讲解如何使用C#语言连接MySQL数据库,并展示一个使用List来读取数据的示例。 ...

    MYSQL_C_API.rar_MYSQL_mysql c++

    MySQL C API是MySQL数据库系统提供的一种编程接口,用于在C或C++程序中与MySQL服务器进行交互。这个“MYSQL_C_API.rar_MYSQL_mysql c++”压缩包文件包含了一个详细注释版的MySQL C API文档,名为“MYSQL_C_API详解....

    MYSQL5.1 CHM版中文帮助文档.zip_MYSQL_msql 5.1 API文档

    error()`和`mysql_errno()`)、事务控制函数(如`mysql_commit()`和`mysql_rollback()`)、预处理语句函数(用于提高性能和安全性)以及元数据查询函数(如`mysql_field_count()`和`mysql_num_rows()`)等。...

    CSQL.rar_ CSQL_CSQL_MYSQL改_linux c mysql_linux mysql增删

    通过`mysql_fetch_row()`可以逐行获取结果,`mysql_num_rows()`则返回结果集中行的数量。 7. **错误处理**:在与MySQL交互时,需要检查每个函数的返回值以处理可能出现的错误。`mysql_error()`函数可以获取最近一次...

Global site tag (gtag.js) - Google Analytics