mysql(2)对数据库的增删改
【语句规范】
关键字与函数名称全部大写;
数据库名称、表名称、字段名称全部小写;
SQL语句必须以分号结尾;
【常用命令】
1、显示当前服务器版本:SELECT version();
2、显示当前日期时间:SELECT now();
3、显示当前用户:SELECT user();
【创建数据库】(花括号为必选;竖线表示从中做选择;中括号内容可有可无)
【一】创建
CREATE {DATABASE | SCHEMA} [IF NOT EXISTS] db_name [DEFAULT]
注:CHARACTER SET [=] character_name; //编码方式
例子:CREATE DATABASE IF NOT EXISTS t2 CHARACTER SET gdk;
最简化:CREATE DATABASE 数据库名;
高级应用 ---- 创建数据库,该命令的作用:
1.如果数据库不存在则创建,存在则不创建。 --- IF NOT EXISTS
2.创建数据库,并设定编码集为utf8 --- CHARSET utf8 COLLATE utf8_general_ci
2.创建数据库,并设定编码集为utf8 --- CHARSET utf8 COLLATE utf8_general_ci
【二】显示数据库
SHOW {DATABASES | SCHEMAS} [LINK 'PATTERN' | WHERE expr];
简化:SHOW DATABASES;
显示警告:SHOW WARNINGS;
显示某数据库创建时显示的指令是:SHOW CREATE DATABASE 数据库名;
显示某数据表创建时显示的指令是:SHOW CREATE TABLE 数据表名;
【三】操作/使用数据库 语法:use database;
【四】修改数据库编码方式
ALTER {DATABASE | SCHEMA} [db_name] [DEFAULT] CHARACTER SET [=] character_nameR SET;
例子:ALTER DATABASE 数据库名 CHARACTE SET=utf8;
【五】删除库
DROP {DATABASE | SCHEMA} [IF EXISTS] db_name;
简化:DROP DATABASE 数据库名;
【六】删除表中的某条数据(针对的行数据)
DELETE FROM 表名 WHERE expr;
例子:DELETE FROM users1 WHERE id=1;
-----------------------------------------------------------------------------------------------------------------------
DROP 与delete的区别:
(1)drop:删除表结构,当表不需要的时候会用到
drop语句将删除表的结构被依赖的约速(constraints)、触发器(trigger)、index(索引);依赖于该表的存储过程/函数将保留,但是变为invalid状态。
(2)delete只删除数据,不删除表结构
删除部分数据行用delete,注意带上where子句. 回滚段要足够大. 想删除表,当然用drop