不灭的焱

革命尚未成功,同志仍须努力

作者:php-note.com  发布于:2013-07-26 17:35  分类:MySQL/NoSQL 

MySQL手册中find_in_set函数的语法:

FIND_IN_SET(str,strlist) 

假如字符串str 在由N 子链组成的字符串列表strlist 中,则返回值的范围在 1 到 N 之间。 

作者:php-note.com  发布于:2013-07-12 09:31  分类:MySQL/NoSQL 
作者:php-note.com  发布于:2013-05-30 21:58  分类:MySQL/NoSQL 

MySQL 的“root”用户默认状态是没有密码的,所以在 PHP 中您可以使用 mysql_connect("localhost","root","") 来连接 MySQL 服务器;

如果您想为 MySQL 中的“root”用户设置密码(例如:本机MySQL密码为 123456),请在控制台中使用“mysqladmin”命令。例如:

d:\PHP\xampp\mysql\bin\mysqladmin.exe  -u  root  password  123456
作者:php-note.com  发布于:2013-05-13 13:27  分类:MySQL/NoSQL 
MySQL 数据类型中的 integer types 有点奇怪。你可能会见到诸如:int(3)、int(4)、int(8) 之类的 int 数据类型。刚接触 MySQL 的时候,我还以为 int(3) 占用的存储空间比 int(4) 要小, int(4) 占用的存储空间比 int(8) 小。

后来,参看 MySQL 手册,发现自己理解错了。

int(M): M indicates the maximum display width for integer types.


在 integer 数据类型中,M 表示最大显示宽度。

作者:php-note.com  发布于:2013-05-13 10:41  分类:MySQL/NoSQL 
1、整型
MySQL数据类型 含义(有符号)
tinyint(m) 1个字节  范围(-128~127)
smallint(m) 2个字节  范围(-32768~32767)
mediumint(m) 3个字节  范围(-8388608~8388607)
int(m) 4个字节  范围(-2147483648~2147483647)
bigint(m) 8个字节  范围(+-9.22*10的18次方)

取值范围如果加了unsigned,则最大值翻倍,如tinyint unsigned的取值范围为(0~256)。

int(m)里的m是表示SELECT查询结果集中的显示宽度,并不影响实际的取值范围,没有影响到显示的宽度,不知道这个m有什么用。

作者:php-note.com  发布于:2013-04-25 21:35  分类:MySQL/NoSQL 

从数据库里取N个字段,然后组合到一起用“,”分割显示,起初想到用CONCAT()来处理,好是麻烦,没想到在手册里居然有提到 CONCAT_WS(),非常好用。

CONCAT_WS(separator, str1, str2,...)

它是一个特殊形式的 CONCAT()。第一个参数剩余参数间的分隔符。分隔符可以是与剩余参数一样的字符串。如果分隔符是 NULL,返回值也将为 NULL。这个函数会跳过分隔符参数后的任何 NULL 和空字符串。分隔符将被加到被连接的字符串之间

作者:php-note.com  发布于:2013-03-18 14:48  分类:MySQL/NoSQL 

所以大家要注意,以后查询数据库的时候,如果字段是string类型的,条件的值必须加上 单引号,以提升查询的效率!

作者:php-note.com  发布于:2013-01-07 13:58  分类:MySQL/NoSQL 

官方对PHP连接到MySQL数据库服务器的三种主要的API简介如下:

http://php.net/manual/zh/mysqli.overview.php

PHP mysql与mysqli事务详解

在PHP中,mysqli 已经很好的封装了mysql事务的相关操作。如下示例:

作者:php-note.com  发布于:2012-12-20 15:59  分类:MySQL/NoSQL 

~~语法~~


  CREATE TRIGGER <触发器名称>  --触发器必须有名字,最多64个字符,可能后面会附有分隔符.它和MySQL中其他对象的命名方式基本相象.      { BEFORE | AFTER }  --触发器有执行的时间设置:可以设置为事件发生前或后。      { INSERT | UPDATE | DELETE }  --同样也能设定触发的事件:它们可以在执行insert、update或delete的过程中触发。      ON <表名称>  --触发器是属于某一个表的:当在这个表上执行插入、 更新或删除操作的时候就导致触发器的激活. 我们不能给同一张表的同一个事件安排两个触发器。      FOR EACH ROW  --触发器的执行间隔:FOR EACH ROW子句通知触发器 每隔一行执行一次动作,而不是对整个表执行一次。      <触发器SQL语句>  --触发器包含所要触发的SQL语句:这里的语句可以是任何合法的语句, 包括复合语句,但是这里的语句受的限制和函数的一样。    --你必须拥有相当大的权限才能创建触发器(CREATE TRIGGER),如果你已经是Root用户,那么就足够了。这跟SQL的标准有所不同。 

作者:php-note.com  发布于:2012-10-21 15:23  分类:MySQL/NoSQL 

当服务器没有运行PHP、没装phpMyAdmin的时候,远程管理MySQL就显得有必要了。

第一步:开启MySQL用户的远程访问权限

mysql -u root -p mysql # 第1个mysql是执行命令,第2个mysql是系统数据名称