分类: [MySQL]

MySQL中触发器

触发器是与某个事件相关的特殊存储过程,与存储过程不同的是,存储过程需要用 call 调用而出发器不需要使用call调用调用。 也就是自己预先定义好了,当某个事件发生时,就会自动出发触发器进行相关的操作。 仅对 insert 、 update 、delete 有效,对select无。 五要素 trigger_name :触发器名字,其实这个为了便于对触发器的修改与删除而存在。 trigger_time:触发事件,在事件触发前执行还是出发后执行。 tigger_action:触发的动作。 listen_object:监听对象。 listen_action:监听的动作。 下面是一个创建触发器的模板: cr ......

数据库设计准则(第一、第二、第三范式说明)

I、关系数据库设计范式介绍 1.1 第一范式(1NF)无重复的列       所谓第一范式(1NF)是指数据库表的每一列都是不可分割的基本数据项,同一列中不能有多个值,即实体中的某个属性不能有多个值或者不能有重复的属性。如果出现重复的属性,就可能需要定义一个新的实体,新的实体由重复的属性构成,新实体与原实体之间为一对多关系。在第一范式(1NF)中表的每一行只包含一个实例的信息。简而言之,第一范式就是无重复的列。 说明:在任何一个关系数据库中,第一范式(1NF)是对关系模式的基本要求,不满足 ......

数据备份——PHP

在大多数情况下,开发实在win下进行,因此,然系统每天自动备份数据这也是有必要的饿。 Windows平台数据备份 创建批处理文件 在批处理文件中填写如下代码: D:\wamp64\bin\php\php7.0.10\php.exe D:\mythings\backup\back.php #php安装路径 运行的PHP文件路径       需要注意的是:路径别错。 创建运行的PHP文件 <?php /*定时备份数据库文件*/ //设置时区 date_default_timezone_set( 'PRC' ); //根据时间生成文件名称 $bakFileName = date( 'YmdHis', time() ) . '.sql'; $ ......

数据库定时备份

在Linux中,不管是用PHP函数还是用shell命令备份数据,都会用到 crontab命令实现定时执行;当然在win在也可以添加到任务列表中定时执行。 Linux下使用crontab定时备份mysql数据库 可以自己创建备份目录,这里就不创建备份目录了。 编写备份脚本:vi dbbackup.sh 在脚本中写入如下代码: mysqldump –uuser –ppassword dbname |gzip –>/home/wwwroot/default/dbname`date +%Y-%m-%d_%H%M%S`.sql.gz cd  /home/wwwroot/default/ rm –rf   `find . -name ‘*.sql.gz’ -mtime 10`  #删除10天前的备份 ......

MySQL从文本字段中提取字符

MID() 函数

MID 函数用于从文本字段中提取字符。

语法

SELECT MID(column_name,start[,length]) FROM table_name

参数描述

column_name  必需。要提取字符的字段。

start     必需。规定开始位置(起始值是 1)。

length   可选。要返回的字符数。如果省略,则 MID() 函数返回剩余文本。

 

MYSQL将时间戳格式化

MYSQL将时间戳格式化,取出固定格式的时间 // 2017-05-07 select DATE_FORMAT(FROM_UNIXTIME(`create_time`),'%Y-%m-%d') as 'date_format' from post; select FROM_UNIXTIME(`create_time`'%Y-%m-%d') as 'date_format' from post; 上面两条都可以格式化时间,还可以自定义时间格式和获取固定日期,如下选项: Format Description %a Abbreviated weekday name (Sun-Sat) %b Abbreviated month name (Jan-Dec) %c Month, numeric (0-12) %D Day of month with English suffix (0th, 1st, 2nd, 3rd, ) %d Day ......

mysqli_query(“set nams utf8”)为FALSE

经过过测试: mysqli_query(“set nams  utf8”)必须在所有语句的执行之前,否则会返回FALSE。   看手册,说不建议用mysqli_query来设置编码,用mysqli_set_charset,但如果用这个方法有要求:如果在Windows平台上使用该方法,需要4.1.11版或以上的MySQL客户端库,且MySQL版本为5.0.6以上。 MySQL客户端库 与 MySQL版本有什么区别,我到还没弄清楚。   utf8不能写成utf-8,,因为MySQL的命令模式中只能识别“utf8”,不能识别“utf-8”;但是在PHP中header时却要加上“-”,因为IE不认识没杠的“utf8”。   ”UTF-8”才是标准 ......

Mysql中limit用法

我记得MySQL有个做分页的语句(limit),多久不用还是有点记不清两个参数的含义,都说了好记性不如烂笔头。go dwon…

用法

SELECT * FROM table   LIMIT [offset,] rows | rows OFFSET offset

例子

select * from  table limit  offset,rows;

offset表示偏移量,rows表示取出的行数,即是偏移offset这麽多再去rows条数据。

百度统计