MySQL学习(2)时间类型
DAT_E,TIM_E,DAT_ETIME,TIM_ESTAMP,Y_EAR
MySQL支持多种格式化方式,插入时可以是字符串,可以使数字。
MySQL代表字符串的方式有两种,一是单引号,另一种是双引号。
又一次提交失败,看来CSDN的BUG还是很大的。
原因基本确定,是因为DATE,TIME,DATETIME,TIMESTAMP,YEAR为MySQL数据的关键字,也是其他数据库的关键字,插入时就会报错,这时候可见准确的错误提示的重要性。
相关文档:
http://www.mysql.cn/
事务,参数,嵌套调用,游标,循环, 触发器,视图,约束, 索引,。。。
1. 创建实例数据库
create database db5;
use db5;
2.创建一个简单的工作表,并插入数据
create table t(s1 int);
insert into t values(5);
3.创建程序实例 crea ......
ERROR 1005 (HY000): Can't create table ' ****.frm' (errno: 150)
我是从以下几个方面解决了此问题:
1、确保参照的表和字段是存在的;
2、组成外键的字段要求被索引(主要是外键那个字段要求在其他表中是主键);
3、外键关联的两表或多表要求都是INNODB类型的表;
4、字段类型(说明)要一样`itemId` varchar( ......
select * for update锁表的问题
由于InnoDB预设是Row-Level Lock,所以只有「明确」的指定主键,MySQL才会执行Row lock (只锁住被选取的资料例) ,否则MySQL将会执行Table Lock (将整个资料表单给锁住)。
举个例子:
假设有个表单products ,里面有id跟name二个栏位,id是主键。
例1: (明确指定主键,并且有此笔资料, ......
MySQL的也支持存储过程,函数,触发器。
以下各个功能的详述,主要是示例。
/**1.定义分割符*/
DELIMITER //
/**2.创建函数-计算两数之和*/
CREATE FUNCTION f_sum(num1 INT,num2 INT) RETURNS INT
BEGIN
RETURN num1+num2;
END;
//
/**
*3.创建存储过程
*思路:3.1.有该存储过程则删除,3.2有使用的中间表 ......
MySQL 中文显示乱码
如果你遇到乱码问题,可以从下面几个问题逐步检查:
(1)检查你的文件存储编码是否和 meta 声明的一致,假如你的文件是按照 utf-8 编码存储,但是 meta 却声明为 gb2312 ,将导致乱码。
解决办法:将页面存储编码和 meta 声明保持一致。用记事本 ......