定义和用法DATE_FORMAT() 函数用于以不同的格式显示日期/时间数据。语法DATE_FORMAT(date,format)date 参数是合法的日期。format 规定日期/时间的输出格式。可以使用的格式有:格式 描述%a缩写星期名
%b缩写月名
%c月,数值
%D带有英文前缀的月中的天
%d月的天,数值(00-31)
%e月的天,数值(0-31)
%f微秒
%H小时 (00-23)
%h小时 (01-12)
%I小时 (01-12)
%i分钟,数值(00-59)
%j年的天 (001-366)
%k小时 (0-23)
%l小时 (1-12)
%M月名
%
date为需要处理的参数(该参数是Unix 时间戳),可以是字段名,也可以直接是Unix 时间戳字符串 后面的 '%Y%m%d' 主要是将返回值格式化 例如: mysql SELECT FROM_UNIXTIME( 1249488000, '%Y%m%d' ) - 20071120 mysql SELECT FROM_UNIXTIME( 1249488000, '%Y年%m月%d' ) - 2007年11月20 UNIX_TIMESTAMP()是与之相对正好相反的时间函数 UNIX_TIMESTAMP(), UNIX_TIMESTA
合并两个数据表,而被合并的表的列必须完全相同,也就是:列的数量一致,列的名字一致,列的顺序一致,列的类型一致。
两者的区别:
union合并表之后,重复的行数据会被化作一条数据,而后者union all将所有数据行都显示,重复的时候依然保持重复。
union使用方法:
SELECT column_name(s) FROM table_name1
UNION
SELECT column_name(s) FROM table_name2
union all使用方法:
SELECT column_name(s) FROM table_name
算法一:快速排序算法快速排序是由东尼·霍尔所发展的一种排序算法。在平均状况下,排序 n 个项目要Ο(n log n)次比较。在最坏状况下则需要Ο(n2)次比较,但这种状况并不常见。事实上,快速排序通常明显比其他Ο(n log n) 算法更快,因为它的内部循环(inner loop)可以在大部分的架构上很有效率地被实现出来。快速排序使用分治法(Divide and conquer)策略来把一个串行(list)分为两个子串行(sub-lists)。算法步骤:1 从数列中挑出一个元素,称为 “基准”(pivot),2 重新排序数列,所有元素比基准值小的摆放在基准前面,所有元素比基准值大的摆在基准
在安装一个php程序,执行mysql数据库sql文件时,一直报错,出现“1366 - Incorrect integer value: '' for column 'ID' at row 1 ”。出现错误的原因是没有给自增ID赋值,尽管之前的版本可以不赋值,自动增加,但是在新版本的msyql(mysql 5.X以上版本)中需要为其赋值NULL。下面这个sql插入就会出现“1366 - Incorrect integer value: '' for column 'ID' at row 1”INSERT INTO `test` (
var arr = new Array();
arr[0] = '123';
arr[1] = '456';
console.log(arr.length);
var arr1 = new Array();
arr1['x0sdfdsfd'] = '123';
arr1['xsdfsd1'] = '456';
console.log(arr1.length);输出:20[Finished in 0.2s]
RequireJS是一个JS文件,主要的功能是优化页面JS的载入,在平时我们在html页面使用的是script标签来载入JS,如下示例: script src="1.js" /script
script src="2.js" /script
script src="3.js" /script 这样的写法有很大的缺点。首先,加载的时候,浏览器会停止网页渲染,加载文件越多,网页失去响应的时间就会越长;其次,由于js文件之间存在依赖关系,因此必须严格保证加载顺序(比如上例的1.js要在2.js的前面),依赖性最大的模块
首先项目中,需要安装mysql模块:npm install --save-dev mysql然后就可以使用一下代码了:var mysql = require('mysql');
var database = {
host: '127.0.0.1',
user: 'root',
password: 'root',
database: '8081', // 前面建的user表位于这个数据库中
port: 3306
Express 是一个基于 Node.js 的 web 应用程序框架,它提供了一系列强大特性来简化 web 应用的开发,其中路由系统是其核心组件之一。Express 的路由允许你定义如何响应客户端对不同 URL 和 HTTP 方法(如 GET、POST 等)的请求。下面是一些基础概念和使用示例:
基础路由设置
在 Express 中,你可以直接在应用级别定义路由,或者通过 express.Router 创建模块化的、可重用的路由处理器。
应用级别路由
const express = require('express');
const app = express();
// 定义一个 GET
如果你想不使用Express生成器从零开始手动创建一个Express应用,这也是完全可以的。下面是一个基本的手动设置步骤:
1. 初始化项目和安装Express
首先,在你希望存放项目的文件夹下,打开终端或命令提示符,初始化一个新的Node.js项目,并安装Express作为依赖:
mkdir myManualExpressApp
cd myManualExpressApp
npm init -y
npm install express
2. 创建服务器
在项目根目录下,创建一个名为app.js的文件,这将是你的应用程序的主要入口点。打开这个文件,然后输入以下代码来设置一个基本的Expre
Express 是一个开源的、基于 Node.js 的 web 应用开发框架,由 TJ Holowaychuk 创建并由 StrongLoop(现属于 IBM)维护。它是 Node.js 生态系统中最为广泛使用的 web 框架之一,特别适合构建单页应用、RESTful API 以及任何规模的 web 服务。
核心概念
1. 路由(Routing)
Express 提供了强大而灵活的路由系统,允许开发者定义端点(Endpoints)来处理不同类型的 HTTP 请求(GET、POST、PUT、DELETE 等)。这使得构建 RESTful 风格的 API 成为可能,同时保持代码结构清晰和易于理解。
使用批处理命令即可实现备份,跟windows系统的任务计划搭配使用,可以做到定时自动备份。地中,方法2可以不关闭数据库备份。1、复制date文件夹备份============================假想环境:MySQL 安装位置:C:\MySQL论坛数据库名称为:bbs数据库备份目的地:C:\db_bak\============================新建db_bak.bat,写入以下代码*******************************Code Start*****************************
net stop mysql
相等运算符: ==、 !=如果两个表达式的类型不同,则尝试将它们转换为字符串、数字或布尔值。NaN 与包括其自身在内的任何值都不相等。负零等于正零。null 与 null 和 undefined 相等。以下情况被认为是相等的:相同的字符串,数值上相等的数字,同一对象,相同的布尔值,或者当类型不同时可以被强制转换为上述情况之一的值。其他比较都被认为是不等的。恒等运算符: ===、 !==这些运算符的行为与相等运算符的行为相同,只不过不会执行类型转换。 如果两个表达式的类型不相同,则这些表达式始终返回 false
Cookies 是一种存储在用户本地终端(如浏览器)上的小型文本文件,用于保存用户的一些信息。它们是 Web 开发中非常重要的工具之一,主要用于以下目的:
用户身份验证:通过保存登录状态来识别用户。
用户偏好设置:保存用户的网站偏好,比如语言选择或布局偏好。
购物车功能:在电子商务网站上保存用户的购物车项目。
浏览记录:帮助追踪用户的浏览行为以便提供个性化内容。
Cookies 的组成
一个 Cookie 由键值对组成,其中包含了一些有用的信息,比如:
Name:标识 Cookie 的名称。
Value:与名称对应的值。
Expires/Max-Age:Cookie 的过期时间或者过期时
JavaScript不管是判断PC浏览器还是手机浏览器,都是通过User Agent 来判断, 腾讯网的适配代码. script type="text/javascript"
if(/AppleWebKit.*Mobile/i.test(navigator.userAgent) || (/MIDP|SymbianOS|NOKIA|SAMSUNG|LG|NEC|TCL|Alcatel|BIRD|DBTEL|Dopod|PHILIPS|HAIER|LENOVO|MOT-|Nokia|SonyEricsson|SIE-|Amoi|ZTE/.test(navigator.u
错误日志:160328 11:23:28 InnoDB: Initializing buffer pool, size = 45.0M160328 11:23:28 InnoDB: Completed initialization of buffer pool160328 11:23:28 InnoDB: Operating system error number 87 in a file operation.InnoDB: Some operating system error numbers are described atInnoDB: http://dev.mysql.c
MySQL报无法启动mysql服务 错误1067:进程意外中止,机器关机的时候没有正常关闭数据库,结果导致mysql日志文件损坏,重启之后无法正常恢复。在mysql的配置文件my.ini中添加 :innodb_force_recovery = 1 而关 于innodb_force_recovery参数,有6个参数 1. (SRV_FORCE_IGNORE_CORRUPT):忽略检查到的corrupt页。2. (SRV_FORCE_NO_BACKGROUND):阻止主线程的运行,如主线程需要执行full purge操作,会导致crash。3. (SRV_FORCE_NO_TRX_UNDO):不执
$('#delete_select').on('click',function(){
var ids = new Array();
$('input[name="article_ids[]"]:checked').each(function(){
ids.push($(this).val());
});
$('#iform_deleteArticle').children('input[name="ids"]').attr('value'
我们经常需要判断某个变量/属性是否为undefined。通常有两种写法// 方式1typeof age === 'undefined';// 方式2age === undefined这两种写法有什么区别吗? 应该使用哪一种呢?看看下面的例子typeof age === 'undefined'; // true标识符 age 没有声明过,输出true。再看另一个例子age === undefined; // 报错Firebug提示age is not defined,这就是两者的区别, 即不确定age是否声明或定义时用方式1,确定的则可以用方式2。使用方式1如果变
MySQL用户账号和信息存储在名为mysql的MySQL数据库中。一般不需要直接访问mysql数据库和表,但有时需要直接访问。需要直接访问它的时机之一是在需要获得所有用户账号列表时。为此,可使用以下代码:use mysql;
select user from user;
创建用户账户CREATE USER ben IDENTIFIED BY 'p@$$w0rd';
指定散列口令 IDENTIFIED BY指定的口令为纯文本,MySQL 将在保存到user表之前对其进行加密。为了作为散列值指定口令,使用IDENTIFIED BY PASSWORD。重新命名一个用户账号RENAME USER
所有标签