DML_数据操纵语言
DML语法:
/*
* insert 添加数据
* insert into tableName values('所有数据')
* insert into tableName(部分列名 - 必须包含所有非空列) values('部分列数据')
*/
insert into course values('C01', 'JavaSE', 100);
insert into course values('C02', 'JavaSE', '');
insert into course(courseno, coursename) values('C03', 'Oracle');
--insert into course(courseno) values('C04'); -- wrong
-- char固定长度
insert into school values('S8372222', '中国大学');
insert into school values('S8372223', '中国三美大学');
insert into faculty values('01', '计算机系', 'S8372223');
insert into faculty values('02', '土木工程系', 'S8372223');
insert into faculty values('03', '计算机系', 'S8372222');
insert into faculty values('04', '土木工程系', 'S8372222');
insert into major values('M0001', '软件工程', '01');
insert into major values('M0002', '网络工程', '01');
insert into major values('M0003', '建筑', '02');
insert into major values('M0004', '建筑美学', '02');
insert into major values('M0005', '软件工程', '03');
insert into major values('M0006', '网络工程', '03');
insert into major values('M0007', '建筑', '04');
insert into major values('M0008', '建筑美学', '04');
insert into studentcard values('S87232', '中国大学', '张思思', '11级软件04班');
-- insert添加 FK引入PK的值 有值直接使用 无值先insert数据再插入
insert into student values('S0001', '张思思', '', null, null, '无锡', '', 'M0008', 'S87232');
insert into studentcard values('S87233', '中国大学', '张珊珊', '11级软件04班');
insert into student values('S0002', '张珊珊', '女', 20, null, '北京', '68', 'M0005', 'S87233');
update 注意点:update tableName set 列名 = value, ... where ...
- update tableName set 列名 = value, ... where ...
-- 部分数据更新 where条件
update student set age = 20;
-- 某一条 PK UK
select * from student; -- PK UK
update student set name = '张三散', sex = '男' where stuNo = 'S9999';
select * from course;
update course set hour = 200 where courseno = 'C05';
用户登录
update users set password = '123456' where userName = 'admin';
update users set info = 'newInfo' where userName = 'admin';
中国大学 - 中国社会大学
update school set schoolName = '中国社会大学' where schoolname = '中国大学';
-- 某几条数据 FK
-- 教学部 所有员工 奖金+200
update employee set bonus = bonus + 200
where deptNo = (select deptNo from dept where deptName = '教学部');
-- 软件工程 专业学生 总+10
update student set score = score + 10
where majorno in (select majorNo from major where name = '软件工程');
-- 计算机部 学生总分 + 5
update student set score = score + 5
where unionno = (select unionno from studentunion where unionname = '计算机部');
-- 所有员工工资 + 500
update employee set salary = salary + 500;
delete from tableName where ...
-- 删除所有数据
delete from course;
-- 删除某一条数据 PK UK
select * from course;
delete from course where courseno = 'C05';
某员工辞职
delete from employee where empNo = 'empNo';
select * from student;
delete from student where stuNo = 'S9008';
某商品下架
-- 中国大学 计算机系 撤销
-- 删除数据 数据FK被引用
--学生
update student set majorno = 'M0007'
where majorno in (select majorno from major
where facultyno =(select facultyno from faculty
where fname = '计算机系' and schoolcode
= (select schoolcode from school
where schoolname = '中国大学')));
--专业
delete from major where facultyno = (select facultyno from faculty
where fname = '计算机系' and schoolcode
= (select schoolcode from school
where schoolname = '中国大学'));
--院系
delete from faculty where fname = '计算机系'
and schoolcode = (select schoolcode from school
where schoolname = '中国大学');
-- 同时删除
课程C01 JavaSE 100 开设有问题
delete from studentcourse where courseno = 'C01';
delete from course where courseno = 'C01';
BBS论坛
帖子 - 回复 帖子内容有严重问题
delete from reply where postId = '0001';
delete from post where postId = '0001';
-- 更新 再删除
-- 大学毕业 学生证失效
update student set cardno = null;
delete from studentcard;
DML_数据操纵语言的更多相关文章
- DML(数据操纵语言)
1.概念(C) 数据操纵语言 DML (Data Manipulation Langua)是SQL语言的一个分类,用于对表的内容或者说数据进行增.删.改.查等操作. 通过以下几个关键字实现: SELE ...
- 数据库原理及应用-SQL数据操纵语言(Data Manipulation Language)和嵌入式SQL&存储过程
2018-02-19 18:03:54 一.数据操纵语言(Data Manipulation Language) 数据操纵语言是指插入,删除和更新语言. 二.视图(View) 数据库三级模式,两级映射 ...
- (让你提前知道软件开发33):数据操纵语言(DML)
文章2部分 数据库SQL语言 数据操纵语言(DML) 数据操纵语言(Data Manipulation Language,DML)包含insert.delete和update语句,用于增.删.改数据. ...
- MySQL之数据操纵语言(DML)
数据操纵语言(DML) 数据操纵语(Data Manipulation Language),简称DML. DML主要有四个常用功能. 增 删 改 查 insert delete update sele ...
- 30442数据操纵语言DML
5.5 SQL的数据操纵功能 5.5.1 数据插入 使用CREATE语句创建的数据表还只是一个“空壳”,表中没有任何数据.利用SQL语言提供的INSERT语句可以完成向数据表插入数据的任务. INSE ...
- DML 数据操纵语言
1.INSERT(插入)语言结构 INSERT INTO table(表名)(要插入的列名) VALUES(要插入的具体值): table:要插入数据的表的表名 column[,column]:表中要 ...
- oracle数据操纵语言(DML)data manipulation language
数据库操纵语言(DML)用于查询和操纵模式对象中的数据,它不隐式地提交当前事务. SELECTINSERTUPDATEDELETECALLEXPLAIN PLANLOCK TABLEMERGE使用算术 ...
- SQL语言学习-数据操纵语言
一般而言,数据库中数据的生命周期包括数据插入以及更新.数据删除3个阶段.首先需要用户或者系统将数据插入表.然后,对数据的使用,包括数据的检索以及数据的更新.最后,如果数据已经没有使用价值,则将数据删除 ...
- DML语言(数据操纵语言)
#DML语言/*数据操作语言:插入:insert修改:update删除:delete */ #一.插入语句#方式一:经典的插入/*语法:insert into 表名(列名,...) values(值1 ...
随机推荐
- Jquery-Ajax常用总结
1.方式一:访问.aspx 客户端: function Del(Id) { if (confirm("确认要删除?")) { $.ajax({ type: "Post&q ...
- 【XS128】Link error L1822 symbol _FADD / _FSUB/ _FDIV/ _FMUL.....错误解决的方法
转载请注明出处 因为阅历有限,篇幅不周之处还望指出,谢谢 假设方法确实奏效,请一定回复点赞哦,给后来人也是一种帮助,谢谢! 这是飞思卡尔 XS128平台比較常见的LINK错误. 可是要解决起来也比較头 ...
- 15分钟学会git基本的操作命令
http://hao.jobbole.com/try-git/ 假如你现在新创建了一个项目,想把它提交到github上面? 假设你创建好了一个项目,并切换到项目的根目录下面: $ git status ...
- mydumper原理2
使用mydumper备份发生Waiting for table flush,导致所有线程都无法读和写 版本 mydumper 0.9.1OS centos6.6 X86_64mysql 5.6.25- ...
- 进程间通信之popen和pclose函数
常见的操作是创建一个管道连接到另一个进程,然后读其输出或向其输入端发送数据,为此,标准I/O库提供了两个函数popen和pclose.这两个函数实现的操作是:创建一个管道,调用fork产生一个子进程, ...
- mysql颠覆实战笔记(三)-- 用户登录(二):保存用户操作日志的方法
版权声明:笔记整理者亡命小卒热爱自由,崇尚分享.但是本笔记源自www.jtthink.com(程序员在囧途)沈逸老师的<web级mysql颠覆实战课程 >.如需转载请尊重老师劳动,保留沈逸 ...
- div容器内文本对齐--神奇的css
有时候使用一些css往往能达到意想不到的效果 最近需要在页面上显示读取的文本内容,中英文混杂着,我把它们统统抛到div中div设置了宽度,效果是相当糟糕,左对齐,右端长短不一,有的超出长度,有的不够长 ...
- HDU 3085 Nightmare Ⅱ (双向BFS)
Nightmare Ⅱ Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Tota ...
- [改善Java代码]不要让类型默默转换
建议23:不要让类型默默转换 public class Client { // 光速是30万公里/秒,常量 public static final int LIGHT_SPEED = 30 * 100 ...
- 在windows2003系统上安装两个版本的oracle
想试试oracle11g都有什么变化,于是在机器上又安装了oracle11.1.7版本的.安装很简单,只是安装后如何让两个数据库同时跑起来,需要稍微设置下.1.将11goracle的监听换一个端口,比 ...