0.说明
MySQL数据库是一个十分轻便的数据库管理系统,相比大型的数据库管理系统如Oracle,MySQL更拥有轻便、灵活、开发速度快的特色,更适用于中小型数据的存储与架构,被数以万计的网站采用。从5版本以后,陆续支持了游标、触发器、事务、存储过程等高级应用,这也给MySQL的易用性和企业服务的发展添加了重要的砝码。
一. 数据库操作
1. 查看数据库
SHOW DATABASES;
2. 创建数据库
CREATE DATABASE db_name; #db_name为表名
3. 使用数据库
USE db_name;
4. 删除数据库
DROP DATABASE db_name;
二. 创建表
1. 创建表
CREATE TABLE table_name
(
id TINYINT UNSIGNED NOT NULL AUTO_INCREMENT,
name char() NOT NULL,
score int NOT NULL,
PRIMARY KEY(id) #设置主键
)ENGINE=InnoDB;
2. 复制表
CREATE TABLE tb_name2 SELECT * FROM tb_name;
3. 创建临时表
CREATE TEMPORARY TABLE tb_name; #(这里和创建普通表一样)
4. 查看数据库中可用的表
SHOW TABLES;
5. 查看表的结构
DESCRIBE tb_name;
6. 删除表
DROP TABLE tb_name;
7. 表重命名
RENAME TABLE name_old TO name_new;
三. 修改表
ALTER TABLE tb_name ADD COLUMN address varchar() NOT NULL;
ALTER TABLE tb_name DROP address;
ALTER TABLE tb_name CHANGE score score SMALLINT() NOT NULL;
四. 插入数据
1. 插入数据
INSERT INTO tb_name(id,name,score) VALUES(NULL,'张三',),(NULL,'张四',), (NULL,'张五',);
2. 插入检索出来的数据
INSERT INTO tb_name(name,score) SELECT name,score FROM tb_name2;
3.复制一条记录(只有id不同)
insert into article(id, title,keywords,desc,contents) select ,title,keywords,desc,contents from article where article_id = ;
从不同的表复制
insert into 表1 select * from 表2 where id =** ; 同一张表中复制(无主键)
insert into 表1 select * from 表2 where id =** ; 同一张表中复制(有主键)
insert into 表1(字段1,字段2,字段3) select 字段1,字段2,字段3 from 表1 where id= ** ;
五. 更新数据
UPDATE tb_name SET score= WHERE id=;
UPDATE tablename SET columnName=NewValue [ WHERE condition ]
六. 常用查询
1. 通配符
SELECT prod_id, prod_name
FROM tb_name
WHERE prod_name LIKE 'jet%'; #%匹配任何字符出现任何次数
SELECT prod_id, prod_name
FROM tb_name
WHERE prod_name LIKE '_ jet'; #_ 匹配一个字符
2. 拼接
select CONCAT(task_desc, '_', task_class, '_', id) as tab from taskclass_info
结果
任务1_6208_219933
任务2_6209_220001
3. 用某个字符做拼接福
select CONCAT_WS(separator, str1, str2,...) from ***
其中separator是连接符