DDL(data definition language)创建和管理表

1.创建表

  • 1.直接创建
例如:
create table emp(
name varchar(20),
salary int default 1000,
id int,
hire_date date );
  • 2.通过子查询的方式创建
例如:
create table
emp1 as
select name n_name,id n_id,hire_date from emp;

2.修改表

  • 1.增加新的列
  alter table emp add(birthday date);
  • 2.修改现有的列
 alter table emp alter column name set default "abc"
  • 3.重命名现有的列
alter table emp change  salary  sal int;
  • 4.删除现有的列
alter table emp drop column birthday;
  • 3.清空表中的数据
truncate table emp1;
  • 4.重命名表
alter table emp1 rename emp2;
  • 5.删除表
drop table emp2;

DML(data manipulation language)数据处理

1.INSERT 增

  • 1.增添一条记录
insert into [表名](,,,,,) values(,,,,,)
  • 2.从其它表中拷贝数据
insert into [表名]
select .... from [另一个表] where ....

2.UPDATE 改

  • 1.更新数据
update [表名]
set .....
where ....

3.DELETE 删

  • 1.删除数据
delete from [表名]
where ....

4.SELECT 查

  • 1.查询数据
select ....
from …
where ….
group by …
having …
order by ….

约束(oracle)

1.创建表的同时,添加对应属性的约束

  • 1.表级约束 & 列级约束
create table emp(
employee_id number(8),
salary number(8),
--列级约束
hire_date date not null,
dept_id number(8),
email varchar2(8) constraint emp_email_uk unique,
name varchar2(8) constraint emp_name_uu not null,
first_name varchar2(8),
--表级约束
constraint emp_emp_id_pk primary key(employee_id),
constraint emp_fir_name_uk unique(first_name),
constraint emp_dept_id_fk foreign key(dept_id) references departments(department_id) ON DELETE CASCADE
);
  • 2.只有 not null 只能使用列级约束。其他的约束两种方式皆可

2.添加和删除表的约束--在创建表以后,只能添加和删除,不能修改

  • 1.添加
alter table emp
add constraint emp_sal_ck check(salary > 0);

对于 not null 来讲,不用 add,需要使用 modify:

alter table emp
modify (salary not null);
  • 2.删除
alter table emp
drop constraint emp_sal_ck;
  • 3.使某一个约束失效:此约束还存在于表中,只是不起作用
alter table emp
disable constraint emp_email_uk;
  • 4.使某一个约束激活:激活以后,此约束具有约束力
alter table emp
enable constraint emp_email_uk;

常用SQL笔记总结的更多相关文章

  1. 常用sql笔记

    Student(S#,Sname,Sage,Ssex) 学生表Course(C#,Cname,T#) 课程表SC(S#,C#,score) 成绩表Teacher(T#,Tname) 教师表问题:1.查 ...

  2. SQL 笔记 By 华仔

    -------------------------------------读书笔记------------------------------- 笔记1-徐 最常用的几种备份方法 笔记2-徐 收缩数据 ...

  3. 常用命令常用sql:SHOWVARIABLESLIKE'character%'

    mysql学习笔记-常用命令 常用sql: SHOW VARIABLES LIKE 'character%';查看字符集SHOW VARIABLES LIKE 'collation_%';show e ...

  4. Mysql 常用 SQL 语句集锦

    Mysql 常用 SQL 语句集锦 基础篇 //查询时间,友好提示 $sql = "select date_format(create_time, '%Y-%m-%d') as day fr ...

  5. oracle(sql)基础篇系列(一)——基础select语句、常用sql函数、组函数、分组函数

        花点时间整理下sql基础,温故而知新.文章的demo来自oracle自带的dept,emp,salgrade三张表.解锁scott用户,使用scott用户登录就可以看到自带的表. #使用ora ...

  6. 常用SQL[ORACLE]

        1.常用系统函数 2.常用sql语句 3.一些定义和关键字 4.需要注意点   1.常用系统函数 ↑ --decode decode(column,if_value,value,elseif_ ...

  7. Oracle常用SQL查询(2)

    三.查看数据库的SQL 1 .查看表空间的名称及大小 select  t.tablespace_name,  round ( sum (bytes / ( 1024 * 1024 )), 0 ) ts ...

  8. Oracle常用SQL查询

    一.ORACLE的启动和关闭 1.在单机环境下要想启动或关闭oracle系统必须首先切换到oracle用户,如下: su - oracle a.启动Oracle系统 oracle>svrmgrl ...

  9. Mysql 常用 SQL 语句集锦 转载(https://gold.xitu.io/post/584e7b298d6d81005456eb53)

    Mysql 常用 SQL 语句集锦 基础篇 //查询时间,友好提示 $sql = "select date_format(create_time, '%Y-%m-%d') as day fr ...

随机推荐

  1. 环形进度条的实现方法总结和动态时钟绘制(CSS3、SVG、Canvas)

    缘由: 在某一个游戏公司的笔试中,最后一道大题是,“用CSS3实现根据动态显示时间和环形进度[效果如下图所示],且每个圆环的颜色不一样,不需要考虑IE6~8的兼容性”.当时第一想法是用SVG,因为SV ...

  2. 数组a[n]中存放1-n中的n-1个数,给出算法找出重复的那一个数

    问题描述: 数组a[n]中存放1-n中的n-1个数,给出算法找出重复的那一个数. 算法一: 对数组a[n]进行冒泡排序,如果冒泡所得的最值和前一个最值相等,则该最值为重复的数. 分析: 该算法时间复杂 ...

  3. Python day 7(1) 模块

    一:模块 1 在Python中,一个.py文件就称之为一个模块(Module) 2 Python的好处,优点: a  提高了代码的可维护性 b  当一个模块编写完毕,就可以被其他地方引用.我们在编写程 ...

  4. python 模块:xlrd && xlwt

    主要来自:http://www.jb51.net/article/60510.htm python读excel--xlrd 这个过程有几个比较麻烦的问题,比如读取日期.读合并单元格内容.下面先看看基本 ...

  5. vmware一步步安装centos

    软件环境:vmware10.0破解版 centos版本:6.4 1.启动vmware,新建虚拟机,选择自定义安装 2,出现如下界面,保持默认,点击下一步 3.这个步骤要特别注意,选择“稍后安装”,我们 ...

  6. JavaMail开发教程01开山篇

    序 其实想写JavaMail这一系列的博客已经有一个月之久了,缘起是某次乱逛传智播客官网浏览到相关的视频教程,想起大学时代学过的计算机网络提到邮件相关的协议,但遗憾的是到目前为止还没有接触计算机网络编 ...

  7. 【Java框架型项目从入门到装逼】第七节 - 学生管理系统项目搭建

    本次的教程是打算用Spring,SpringMVC以及传统的jdbc技术来制作一个简单的增删改查项目,对用户信息进行增删改查,就这么简单. 1.新建项目 首先,打开eclipse,新建一个web项目. ...

  8. Java 非线程安全的HashMap如何在多线程中使用

    Java 非线程安全的HashMap如何在多线程中使用 HashMap 是非线程安全的.在多线程条件下,容易导致死循环,具体表现为CPU使用率100%.因此多线程环境下保证 HashMap 的线程安全 ...

  9. 简易 (I/O)版本通讯录

    #include <stdio.h> #include<assert.h> //#include<malloc.h> #include<string.h> ...

  10. DIV里面的图片水平与垂直居中的方法

    <div class=“box”> <img /> </div> 1.水平居中: 1)box设置  text-align:center ;    text-alig ...