SQL的DDL和DML
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的更多相关文章
- JAVA-Unit01: 数据库原理 、 SQL(DDL、DML)
Unit01: 数据库原理 . SQL(DDL.DML) SQL语句是不区分大小写的,但是行业里习惯将关键字与分关键字用大小写岔开以提高可读性. SELECT SYSDATE FROM dual DD ...
- SQL之DDL、DML、DCL、TCL
SQL SQL(structured query language)是一种领域特定语言(DSL,domain-specific language),用于管理关系型数据库(relational data ...
- SQL、PL/SQL、DDL、DML、TCL介绍
SQL:结构化查询语言(Structured Query Language) PL/SQL:过程化SQL语言(Procedural Language/SQL) DDL(Data Definition ...
- SQL Server - SQL语言组成 (DML、DDL、DCL、DQL的区别)
转载自:https://www.cnblogs.com/dato/p/7049343.html 作者:Dato.zeng --------------------------------------- ...
- SQL语法之DDL和DML
SQL语法之DDL和DML DDL数据库定义语言 create 创建 alter 修改 drop 删除 drop和delete的区别 truncate DML 数据操作语言 insert ...
- SQL Server DDL触发器运用
一.本文所涉及的内容(Contents) 本文所涉及的内容(Contents) 背景(Contexts) 基础知识(Rudimentary Knowledge) DDL运用场景(DDL Scene) ...
- jdbc java数据库连接 3)Statement接口之执行DDL和DML语句的简化
上一章的代码中,可以发现,jdbc执行DDL和DML有几个步骤都是一样的: 1)执行语句开始时,创建驱动注册对象.获取连接的数据库对象.创建Statement对象 // 创建驱动注册对象 Class. ...
- jdbc java数据库连接 3)Statement接口之执行DDL、DML、DQL
|- Statement接口: 用于执行静态的sql语句 |- int executeUpdate(String sql) : 执行静态的更新sql语句(DDL,DML) |- ResultSet ...
- SQL基础-----DDL
1 (My)SQL入门 这里用了(My)SQL这样的标题,目的是介绍标准SQL的同时,也将MySQL在标准SQL上的扩展一同介绍给读者. 2:SQL分类 SQL语句主要可以划分为以下3个类别 .DDL ...
随机推荐
- BZOJ 4221 [JOI2012春季合宿]Kangaroo (DP)
题目链接 https://www.lydsy.com/JudgeOnline/problem.php?id=4221 题解 orz WYC 爆切神仙DP 首先将所有袋鼠按大小排序.考虑从前往后DP, ...
- JavaWeb-SpringSecurity实现需求-判断请求是否以html结尾
系列博文 项目已上传至guthub 传送门 JavaWeb-SpringSecurity初认识 传送门 JavaWeb-SpringSecurity在数据库中查询登陆用户 传送门 JavaWeb-Sp ...
- Centos系统下载
在学习或者工作当中,难免会用到不同版本的CentOS镜像,下面就简单的介绍一下如何正确并快速的下载所需要的CentOS镜像. 一.官网下载 官网地址:https://www.centos.org/此种 ...
- How to intercept any postback in a page? - ASP.NET
How to intercept any postback in a page? - ASP.NET There's a couple of things you can do to intercep ...
- 【原】vue-router中params和query的区别
1.引入方式不同 query要用path来引入 this.$router.push({ path: 'test', query: { type: 2, detail: '哈哈' } }) params ...
- ubuntu 18.04 64bit下如何安装安卓虚拟机anbox?
一. 安装snapd sudo apt-get install snapd 二. 安装adb sudo apt-get install adb 三. 安装必要的内核模块 wget https://la ...
- LC 425. Word Squares 【lock,hard】
Given a set of words (without duplicates), find all word squares you can build from them. A sequence ...
- 自定义圆形图片控件CircleImageView的实现
package com.loaderman.circleimageviewdemo; import android.content.Context; import android.content.re ...
- 如何在GitHub上下载一部分文件(单个文件夹)
Preface Github下的项目可能很大,里面有很多的子文件夹,我们可能只需要使用某个子目录下的资源,可以不用下载完整的repo就能使用. 例如,我想下载这个repo中的mnist_gan文件:h ...
- redis5.0编译安装
##################### linux下运行redis 1.下载源码 https://redis.io/ 2.将源码上传到服务器中,进行编译安装 a)可以使用rz进行上传(sz是将服务 ...