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. Program Transformation Semantics (程序转换语义学)

    本文是Inside The C++ Object Model Chapter 2 部分的读书笔记.讨论编译器调用拷贝构造函数时的策略(如何优化以提高效率),侯捷称之为"程序转化的语义学&qu ...

  2. URAL 2092 Bolero 贪心

    C - Bolero Time Limit:1000MS     Memory Limit:65536KB     64bit IO Format:%I64d & %I64u Submit S ...

  3. Luogu P4139 上帝与集合的正确用法

    题目链接:Click here Solution: 这道题就考你会不会扩展欧拉定理,根据扩展欧拉定理可知 \[ a^b \equiv a^{(b\,mod\,\varphi(p))+\varphi(p ...

  4. HZOJ 20190727 T2 单(树上dp+乱搞?+乱推式子?+dfs?)

    考试T2,考试时想到了40pts解法,即对于求b数组,随便瞎搞一下就oxxk,求a的话,很明显的高斯消元,但考试时不会打+没开double挂成10pts(我真sb),感觉考试策略还是不够成熟,而且感觉 ...

  5. 如何使用PLX提供的官方驱动和SDK发布自己的产品?

    在我的第一篇博文Plx9030通讯卡驱动开发提到,PLX官网提供了丰富的9000系列(9030,9052,9054)芯片的驱动文件(sys)和SDK开发包.我们在发布自己的产品时,简单的话,可以直接用 ...

  6. nu.random.seed()如何理解

    结论: np.random.seed(a) # 按照规定的顺序生成随机数 # 参数a指定了随机数生成的起始位置: # 如果两处都采用了np.random.seed(a),且两处的参数a相同,则生成的随 ...

  7. .NET(c#) 移动APP开发平台 - Smobiler(1)

    转载地址:https://www.cnblogs.com/oudi/p/8288617.html 如果说基于.net的移动开发平台,目前比较流行的可能是xamarin了,不过除了这个,还有一个比xam ...

  8. Idea中使用Maven编码打包时中文乱码的解决办法

    -Dfile.encoding=GBK

  9. js获取高度和宽度

      CreateTime--2017年7月24日10:15:47Author:Marydon js获取高度和宽度 参考连接:http://www.cnblogs.com/EasonJim/p/6229 ...

  10. 黑马lavarel教程---10、lavarel模型关联

    黑马lavarel教程---10.lavarel模型关联 一.总结 一句话总结: 1.模型关联比较方便,一次定义,后面都可以使用 2.关联关系 使用动态属性进行调用 1.一对多,多对多实例? 一对多: ...