DDL:数据定义语言,定义库、表结构用的
DML:数据操作语言,增、删、改、查
DCL:数据控制语言,权限、事务等控制语句

(一)DDL
1、操作数据库的语句
(1)查看当前DBMS中的所有数据库
show databases;

(2)创建一个数据库
create database 数据库名;

(3)删除一个数据库
drop database 数据库名;

(4)使用,指定使用哪个数据库
use 数据库名;

有了这句后,下面的sql都是默认针对这个数据库的操作。

2、操作表格的语句
(1)查看某个库的所有表格
show tables; #必须前面有use 数据库名;的语句 否则报no database select的错误
show tables from 数据库名;

(2)创建表格
基本版:
create table 【数据库名.】表名称(
字段名1 数据类型,
字段名2 数据类型,
字段名2 数据类型,
....
);

create table 【数据库名.】表名称(字段名1 数据类型,字段名2 数据类型,字段名2 数据类型,....);
注意:最后一个字段名的数据类型后面就不用加,

例如:
create table employee(
id int,
name varchar(20),
age int,
salary double,
gender char,
birthday date
);

(3)查看表结构
desc 表名称;

(4)修改表结构:增加一列
alter table 表名称 add 字段名 数据类型 【after 字段名/ first】;

例如:alter table employee add tel char(11);
alter table employee add tel char(11) after name;

(5)修改表结构:删除一列
alter table 表名称 drop 字段名;

例如:alter table employee drop tel;

(6)修改表结构:修改列的类型,位置等
alter table 表名称 modify 字段名 数据类型 【after 字段名/ first】;

例如:alter table employee modify gender char(2) after age;

(7)修改表结构:修改列的名称
alter table 表名称 change 旧字段名 新的字段名 数据类型 【after 字段名/ first】;

例如:alter table employee change gender sex char(2) after age;

(8)修改表名称
alter table 表名称 rename to 新名称;
例如:alter table employee rename to emp;

(9)删除整张表,包括数据和表结构
drop table 表名称;

(二)DML
1、添加数据
(1)为表的所有列赋值
insert into 表名称 values(值列表);

例如:employee
+----------+-------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+----------+-------------+------+-----+---------+-------+
| id | int(11) | YES | | NULL | |
| name | varchar(20) | YES | | NULL | |
| age | int(11) | YES | | NULL | |
| salary | double | YES | | NULL | |
| gender | char(1) | YES | | NULL | |
| birthday | date | YES | | NULL | |
+----------+-------------+------+-----+---------+-------+

insert into employee values(1,'张三',23,10000,'男','1990-01-01');

(2)为表的部分列赋值
insert into 表名称(字段列表) values(值列表);

insert into employee(id,name) values(2,'李四');

(3)可以一次性增加多行
insert into 表名称 values(值列表1),(值列表2),....;
insert into 表名称(字段列表) values(值列表1),(值列表2),....;

例如:insert into employee(id,name) values(3,'王五'),(4,'赵六'),(5,'钱七');

2、修改数据
update 表名称 set 字段名1 = 字段值1, 字段名2 = 字段值2 【where 条件】;

例如:update employee set gender = '男';
update employee set age = 24 where name = '李四';
update employee set salary = salary * 2; #给所有人涨薪

3、删除数据
delete from 表名称 【where 条件】;

例如:delete from employee;
delete from employee where name = '赵六';

4、查看数据
(1)查看所有的数据
select * from 表名称;

例如:
select * from employee;

(2)查看部分列
select 字段列表 from 表名称;

例如:
select id,name from employee;

(3)查看部分行
select * from 表名称 【where 条件】;
select 字段列表 from 表名称 【where 条件】;

例如:select * from employee where name ='张三';
#查看张三的薪资
select salary from employee where name ='张三';

5、可以在查询结果时,给字段取别名。
select 字段名1 as "别名1",字段名2 as "别名2" ... from 表名称 【where 条件】;

例如:select id as "编号", name as "姓名", salary as "薪资" from employee;
select id "编 号", name 姓名, salary 薪资 from employee;

SQL的DDL和DML的更多相关文章

  1. JAVA-Unit01: 数据库原理 、 SQL(DDL、DML)

    Unit01: 数据库原理 . SQL(DDL.DML) SQL语句是不区分大小写的,但是行业里习惯将关键字与分关键字用大小写岔开以提高可读性. SELECT SYSDATE FROM dual DD ...

  2. SQL之DDL、DML、DCL、TCL

    SQL SQL(structured query language)是一种领域特定语言(DSL,domain-specific language),用于管理关系型数据库(relational data ...

  3. SQL、PL/SQL、DDL、DML、TCL介绍

    SQL:结构化查询语言(Structured Query Language) PL/SQL:过程化SQL语言(Procedural Language/SQL) DDL(Data Definition ...

  4. SQL Server - SQL语言组成 (DML、DDL、DCL、DQL的区别)

    转载自:https://www.cnblogs.com/dato/p/7049343.html 作者:Dato.zeng --------------------------------------- ...

  5. SQL语法之DDL和DML

    SQL语法之DDL和DML        DDL数据库定义语言 create 创建 alter 修改 drop 删除 drop和delete的区别 truncate DML 数据操作语言 insert ...

  6. SQL Server DDL触发器运用

    一.本文所涉及的内容(Contents) 本文所涉及的内容(Contents) 背景(Contexts) 基础知识(Rudimentary Knowledge) DDL运用场景(DDL Scene) ...

  7. jdbc java数据库连接 3)Statement接口之执行DDL和DML语句的简化

    上一章的代码中,可以发现,jdbc执行DDL和DML有几个步骤都是一样的: 1)执行语句开始时,创建驱动注册对象.获取连接的数据库对象.创建Statement对象 // 创建驱动注册对象 Class. ...

  8. jdbc java数据库连接 3)Statement接口之执行DDL、DML、DQL

    |- Statement接口: 用于执行静态的sql语句 |- int executeUpdate(String sql)  : 执行静态的更新sql语句(DDL,DML) |- ResultSet ...

  9. SQL基础-----DDL

    1 (My)SQL入门 这里用了(My)SQL这样的标题,目的是介绍标准SQL的同时,也将MySQL在标准SQL上的扩展一同介绍给读者. 2:SQL分类 SQL语句主要可以划分为以下3个类别 .DDL ...

随机推荐

  1. MacBook pro管理员变成普通用户无法解锁问题

    最近使用Mac的时候,把管理员的名字修改了一下,WTF?没有管理员权限了?然后就没有解锁权限了,这可以说是Mac的一个致命bug呀!下载软件也不可以了.具体我的解决方式在这里记录一下,以供和我遇到同样 ...

  2. mongodb Sort排序能够支持的最大内存限制为32M Plan executor error during find: FAILURE

    1.一个比较老的游戏服维护,关服维护后启动时报错 2.看到关于mongodb的报错,于是去查一下mongodb的日志 Plan executor error during find: FAILURE, ...

  3. LOJ #2731 [JOI2016春季合宿]Solitaire (DP、组合计数)

    题目链接 https://loj.ac/problem/2731 题解 首先一个很自然的思路是,设\(dp[i][j]\)表示选了前\(i\)列,第\(2\)行第\(i\)列的格子是第\(j\)个被填 ...

  4. CSP2019游(AFO?)记

    Day 1 不知道为啥一看到\(T1\)就想到\(longlong\)可能存不下,试了下果然. \(T2\)想了半个小时胡出个\(O(n)\)算法,但是假了.冷静了一下,做了前缀和之后,合法的子区间\ ...

  5. MERGE INTO 解决大数据量复杂操作更新慢的问题

    现我系统中有一条复杂SQL,由于业务复杂需要关联人员的工作离职三个表,并进行分支判断,再计算人员的字段信息,由于人员多,分支多,计算复杂等原因,一次执行需要5min,容易卡死,现在使用MERGE IN ...

  6. 码云转移至阿里云Code记录

    用起来还是挺简单的,跟码云差不多,但关键是企业私有项目成员人数没有限制!码云限制5人(免费) 注意两点: 1.导入仓库链接的时候,如果username是邮箱含@,要换成%40,不然这个项目直接报500 ...

  7. 编写可维护的JavaScript代码(部分)

    平时使用的时VS来进行代码的书写,VS会自动的将代码格式化,所有写了这么久的JS代码,也没有注意到这些点.看了<编写可维护的javascript代码>之后,做了些笔记. var resul ...

  8. ubuntu 18.04 64bit下如何安装安卓虚拟机anbox?

    一. 安装snapd sudo apt-get install snapd 二. 安装adb sudo apt-get install adb 三. 安装必要的内核模块 wget https://la ...

  9. Linux 关机/重启命令

    Normal 0 7.8 磅 0 2 false false false EN-US ZH-CN X-NONE MicrosoftInternetExplorer4 /* Style Definiti ...

  10. Helm chart仓库官方仓库不能使用解决方法

    Helm chart仓库官方仓库不能使用解决方法 k8s中的官方helm chart仓库在国内可能使用不了,但是我们又需要使用,这里推荐几个方法. 使用其他的chart仓库 微软的chart仓库 ht ...