SQL语言都基于SQL92标准,但各数据库之间又存在差异。目前最新的标准为SQL99,它同样兼容SQL92。
SQL-Structured Query Language结构化查询语言。
DCL – 数据控制语言 Data Controll Language
数据授权,收回授权–grant\revoke
DBA:
创建一个新用户: create user hncu identified by ‘1234’;
给用户授权: grant all on . to ‘hncu’@’%’ with grant option;
注意,创建新用户之后,要关闭并重启MySql服务器才会生效!
SQL语言大小写不敏感
基本操作
show databases; //显示所有已经存在的数据库
use test; //使用某个数据库
show tables; //显示当前数据库中的所有表
source d:\a\a.sql//导入:导入时,必须要先手工建立一个新的数据库
DDL – 数据定义语言Data Definition Language
建库、建表、设置约束等:create\drop\alter
1.创建数据库hncu:
create database IF NOT EXISTS hncu CHARACTER SET utf8;
2.创建表格:
use hncu;//使用某个数据库
create table IF NOT EXISTS stud(
id int,
name varchar(30),
age int
);
3.更改表结构(设置约束)
desc stud; //查看表结构
alter table stud drop column age;
alter table stud add column age int;
4.删除表、删除数据库
drop table stud;
drop database hncu;
DML-数据操纵语言Data Manipulation Language。
主要指数据的增删查改:Select\delete\update\insert\call
select * from stud;
select name,age from stud; //查询指定的列
select name as 姓名, age as 年龄 from stud;
切记:表字段(Field,表头)一定要用英文,如果要显示成中文表头,用别名来解决。
insert into stud values(2,’张三’,22);//向其中写入一行数据。
insert into stud(id,age) values(4,23); //指定字段名的赋值,效率更高
delete from stud where id=4;//删除此列数据
update stud set age = age+1; //给所有学生的年龄加1