Mysql CURD复习(数据库、表、数据)
###############################
数据库的CURD:
C:	create database if not exists tp5_test default charset utf8;
R:	show databases;
U:	alert database tp5_test character utf8 collate utf8_general_ci;
D:	drop database if exists tp5_test;
数据表的CURD:
C:
CREATE TABLE IF NOT EXISTS 数据表名称 (
 字段名称1  [AS 别名]  字段类型  [约束条件] [DEFAULT 默认值] [COMMENT 字段注释],
 字段名称2  [AS 别名]  字段类型  [约束条件] [DEFAULT 默认值] [COMMENT 字段注释],
 字段名称3  [AS 别名]  字段类型  [约束条件] [DEFAULT 默认值] [COMMENT 字段注释],
 ......
)ENGINE = 表存储引擎  DEFAULT CHARSET = 默认编码集  AUTO_INCREMENT = 自增主键起始值;
example:
CREATE TABLE IF NOT EXISTS  staff (
id INT(4) unsigned NOT NULL AUTO_INCREMENT COMMENT '编号',
name VARCHAR(30) NOT NULL    COMMENT '姓名',
sex TINYINT(2)  unsigned  NOT NULL  DEFAULT 1  COMMENT '性别1男0女',
salary FLOAT(10,2) NOT NULL DEFAULT 2000.00 COMMENT '工资',
dept VARCHAR(20)  NOT NULL  DEFAULT '开发部' COMMENT '部门' ,
hiredate DATE  NOT NULL  DEFAULT '0000-00-00' COMMENT '入职日期',
PRIMARY KEY (id)
)ENGINE = MyISAM DEFAULT CHARSET = utf8  AUTO_INCREMENT = 1001;
R:
DESC staff;// 查看表结构
SHOW TABLES;
U:
ALTER TABLE 表名 [ADD ...]   [DROP ... ]  [CHANGE ...] [ RENAME ...]
example:
#添加新字段:age(年龄),要求整型、无符号、不为空、默认值为22,加到sex字段后面
ALTER TABLE `tp5_staff` ADD age TINYINT(3) UNSIGNED NOT NULL DEFAULT '22'  AFTER sex;
D:
#如果有tp5_temp3表,就执行删除操作
DROP TABLE IF EXISTS tp5_temp3;
数据的CURD:
C:	
INSERT 表名 (字段列表) VALUES (值列表);
example:
INSERT staff (id,name,sex,salary,dept,hiredate) 
VALUES   (NULL,'郭靖',1,3500,'财务部','2012-12-10'),
            (NULL,'洪七公',0,3865.38,'开发部','2010-02-19'),
            (NULL,'杨过',1,5302.56,'市场部','2014-09-22'),
            (NULL,'小龙女',0,3500,'客服部','2010-01-20');
R:
SELECT 字段列表  WHERE 数据表
[GOURP BY 分组字段] [HAVING 分组查询条件]
[ORDER BY 排序字段] [LIMIT [起始索引],显示数量]
example:
SELECT  dept AS 部门, ROUND(MAX(salary),0) AS 最高工资 
 FROM tp5_staff
GROUP BY dept 
ORDER BY salary DESC;
U:
UPDATE   表名
    SET 字段名=表达式 [, 字段名=表达式 ...]
    [WHERE 更新条件]
    [ORDER BY  更新顺序]
    [LIMIT 限制更新记录数量]
example:
UPDATE `tp5_staff` SET salary = salary + 500
WHERE dept = '开发部';
D:
DELETE FROM tp5_temp3 WHERE id IN (1009,1010);
# 清除表中全部记录,重置自增主键为 1
TRUNCATE TABLE tp5_temp3;
复制表:
# 获取源表完整结构信息
CREATE TABLE tp5_temp4 LIKE tp5_staff ;
#将源表tp5_staff中全部记录插入到目标表tp5_temp4中
INSERT tp5_temp4 SELECT * FROM tp5_staff;
#查看源表tp5_staff表结构
DESC tp5_staff ;
#查目标表tp5_temp表结构
DESC tp5_temp4 ;
###############################
                    
                
                
            
        
浙公网安备 33010602011771号