SQL 基础
创建模式 create schema <schema_name> authorization <username> 没有指定schema_name时默认是用户名 删除模式 drop schema <schema_name> <cascade | restrict> 创建表 create table student.sc ;定义表中的两个主码以及外码 (sno ), cno ), grade smallint, primary key(sno, cno), foreign key sno references student(sno), foreign key sno references course(cno) ); /*最后一行没有逗号,外码引用的必须是主码*/ 修改表 alter table <table_name> [ add <新列名> <数据类型> [完整性约束] ] [ drop [完整性约束名] [列名] ] [ modify <列名> <数据类型> ]; 删除表 drop table <表名>; 创建索引 create [unique] [cluster] index <索引名> on <表名>( <列名> [ <次序> ] [, <列名> [ <次序> ] ] ....); 删除索引 drop index <索引名> 插入元组 insert into <表名> [ ( <属性列1> [, <属性列2>...] ) ] values ( <常量1> [, <常量2>] ... ) insert into sc(sno,cno) ') 修改元组 update <表名> set <列名> = <表达式> [, <列名> = <表达式> ]... [where <条件>]; update student ' 删除元组 delete from <表名> [where <条件> ]; delete from student ' 使用视图创建语句建视图,通过视图查询数据: create view <视图名> [(<列名>[,<列名>]...)] ;列名要么全部指定,要么全部不指定 as <子查询> [with check option]; drop view <视图名>; 创建用户 create user <username> [with] [DBA | RESOURCE | CONNECT]; create user zx_root IDENTIFIED by 'xxxxx@localhost'; 删除用户 drop user <username>; 授权 grant <权限> [,<权限> ]... ;all privileges, select, update, insert, delete on <对象类型> <对象名> [,<对象类型> <对象名>]... to <用户> [,<用户>]... ;public [with grant option]; grant all privileges on table student, course to u2, u3; grant update(sno) on table student to u4; grant insert on table sc to u5 with grant option 回收授权 revoke <权限>[,<权限>]... on <对象类型> <对象名> [,<对象类型> <对象名>]... from <用户> [,<用户>]... revoke select on table sc from public 创建角色 create role <rolename> 给角色授权 grant <权限> [,<权限>]... on <对象类型> <对象名> to <角色> [,<角色>]... grant <角色1> [,<角色2>]... to <角色3> [,<角色4>]... [with admin option] 收回角色权限 revoke <权限> [,<权限>]... on <对象类型> <对象名> from <角色> [,<角色>]... create role r1; grant select, update, insert on table student to r1; grant r1 to 王平,张明 revoke select on table student from r1; 审计 audit alert,update on sc; noaudit all on sc; 实体完整性 primary key(sno,cno); 参照完整性 foreign key sno reference student(sno); 用户定义完整性 create table sc (sno ) not null, cno ) not null, grade smallint not null,); create table dept (deptno number, dname ) unique, ); create table student (sno ) primary key, ssex ) check (ssex in ('男','女')),); 表级用户定义完整性 check (ssex = '女' or sname not like 'ms.%' ); /*男性名字不能以ms.开头*/ 完整性约束命名子句 constraint <完整性约束条件名> [primary key短语 | foreign key 短语 | check 短语] create stable student (sno ) ), sname ) constraint c2 not null, sage ) ), ssex ) constraint c4 check (ssex in ('男','女'), constraint studentKey primary key(sno), ); alter table student drop constraint c4; alter table student add constraint c4 check (ssex in ('男','女')); 域中完整性限制 ) constraint gd check (value in ('男','女')); alter domain genderdomain ')); alter domain genderdomain drop constraint gd; 查询 seletct [ all | distinct ] <目标列表达式> [, <目标列表达式> ]... from <表名或视图名> [, <表名或视图名> ]... [ where <条件表达式> ] [ group by <列名1> [ having <条件表达式> ] ] [ order by <列名2> [ asc | desc ] ] 表单查询 -sage year from student select sname, sdept, sage from student /*not between and*/ select sname, ssex from student where sdept in ('cs','ma','is') /*not in*/ select * from student where sno like '2002%21' /*%任意多个字符,_单个字符, [ escape '\' ] 表示'\'为换码字符,not like */ select sno,cno from sc where grade is null /*is not*/ select sno,grade from sc ' order by grade desc,sno select cno, count( distinct sno ) from sc group by cno 连接查询,嵌套查询 select sname from student /*or, not*/ select first.cno, second.cpno from course first, course second where first.cpno = second.cno /*<>是不等于*/ select sname from student where sno in (select sno from sc ' ); select sno,cno from sc x where grade >= (select avg(grade) from sc y where y.sno = x.sno); select sname,sage from student where sage < any (select sage from student where sdept = 'cs'); /*all*/ select sname from student where not exists (select * from course where not exists (select * from sc where sno = student.sno and cno = course.cno )); /*not exists 没有*/ 集合查询: select * from student where sdept='cs' union select * from student ; select * from student where sdept='cs' intersect select * from student ; select * from student where sdept='cs' except select * from student ; 数据类型 char(n) 长度为n的定长字符串 varchar(n) 最大长度为n的可变字符串 int 长整形,可写作integer smallint 短整形 numberic(p,d) 定点数,有p位数字(不包括符号,小数点)组成,小数点后有d位小数 real 取决于机器精度的浮点数 double precision 取决于机器精度的双精度浮点数 float(n) 浮点数,精度至少为n为数字 date 日期,YYYY-MM-DD time 时间,HH:MM:SS 小问题 "=" 两边可以没有空格 实例: create DataBase SpjDB on (name=spj_dat, filename='D:\Sql_Server\spj_data.mdf', size=10mb) log on (name=spj_log, filename='D:\Sql_Server\spj_log.ldf', size=3mb) Create table S (SNO ) primary key, SNAME ), STATUS smallint, CITY )) insert into s ','天津'); insert into s ','北京'); Create table p (PNO ) primary key, PNAME ), COLOR ), WEIGHT smallint) insert into P '); insert into P '); insert into P Create table J (JNO ) primary key, PNAME ), CITY )) insert into J values('J1','三建','北京'); insert into J values('J2','一汽','长春'); insert into J Create table SPJ (SNO ), PNO ), JNO ), QTY smallint) insert into SPJ '); insert into SPJ ');
SQL 基础的更多相关文章
- <三> SQL 基础
SQL查询的一般形式,以及被逻辑处理的顺序 (8) select (9) distinct (11) <TOP_specification> <select_list> (1) ...
- [SQL] SQL 基础知识梳理(三) - 聚合和排序
SQL 基础知识梳理(三) - 聚合和排序 [博主]反骨仔 [原文]http://www.cnblogs.com/liqingwen/p/5926689.html 序 这是<SQL 基础知识梳理 ...
- Oracle知识梳理(三)操作篇:SQL基础操作汇总
Oracle知识梳理(三)操作篇:SQL基础操作汇总 一.表操作 1.表的创建(CREATE TABLE): 基本语句格式: CREATE TABLE table_name ( col_ ...
- ASP.NET实现二维码 ASP.Net上传文件 SQL基础语法 C# 动态创建数据库三(MySQL) Net Core 实现谷歌翻译ApI 免费版 C#发布和调试WebService ajax调用WebService实现数据库操作 C# 实体类转json数据过滤掉字段为null的字段
ASP.NET实现二维码 using System;using System.Collections.Generic;using System.Drawing;using System.Linq;us ...
- 数据库整理(三) SQL基础
数据库整理(三) SQL基础 SQL语言的特点 集数据定义语言(DDL),数据操纵语言(DML),数据控制语言(DCL)功能于一体. 可以独立完成数据库生命周期中的全部活动: ●定义和修改.删除关 ...
- 第三章 - SQL基础及元数据获取
SQL的介绍 SQL的定义:结构化查询语句 SQL的作用:对库和表进行操作 SQL的常用分类 DDL 数据定义语言(Data Definition Language) DCL 数据控制语言(Data ...
- [SQL] SQL 基础知识梳理(一)- 数据库与 SQL
SQL 基础知识梳理(一)- 数据库与 SQL [博主]反骨仔 [原文地址]http://www.cnblogs.com/liqingwen/p/5902856.html 目录 What's 数据库 ...
- [SQL] SQL 基础知识梳理(二) - 查询基础
SQL 基础知识梳理(二) - 查询基础 [博主]反骨仔 [原文]http://www.cnblogs.com/liqingwen/p/5904824.html 序 这是<SQL 基础知识梳理( ...
- [SQL] SQL 基础知识梳理(四) - 数据更新
SQL 基础知识梳理(四) - 数据更新 [博主]反骨仔 [原文]http://www.cnblogs.com/liqingwen/p/5929786.html 序 这是<SQL 基础知识梳理( ...
- [SQL] SQL 基础知识梳理(五) - 复杂查询
SQL 基础知识梳理(五) - 复杂查询 [博主]反骨仔 [原文]http://www.cnblogs.com/liqingwen/p/5939796.html 序 这是<SQL 基础知识梳理( ...
随机推荐
- C程序设计语言学习笔记
在Windows下运行C语言程序 Windows下的编程工具使用 VC 6.0,下面讲解如何在VC 6.0下运行上节的"Hello, world"程序. 1) 新建Win32 Co ...
- 装X代码
装X代码 http://hackcode.ishoulu.com/scp/ http://hackcode.ishoulu.com/umbrella/ http://hackcode.ishoulu. ...
- PHP build notes - WARNING: This bison version is not supported for regeneration of the Zend/PHP parsers (found: 3.0, min: 204, excluded: 3.0).
WARNING: This bison version is not supported for regeneration of the Zend/PHP parsers (found: 3.0, ...
- django表单验证和跨站伪造csrf
Form验证 django中的Form一般有两种功能: 输入html 验证用户输入 django使用内置form方法验证表单提交的数据 html页面 <!DOCTYPE html> < ...
- JS原生ajax与Jquery插件ajax深入学习
序言: 近来随着项目的上线实施,稍微有点空闲,闲暇之时偶然发现之前写的关于javascript原生xmlHttpRequest ajax方法以及后来jquery插件ajax方法,于是就行了一些总结,因 ...
- Sharp Memory LCD (ls013b7dh03)驱动
网上找不到什么靠谱的资料,甚至我调好了夏普原厂和代理商还来找我要demo, 哎,苦逼的码农. lcd_main.c #include "ls013b7dh03.h" #inclu ...
- 顶级域名和二级域名cookie共享删除和修改
原文地址: https://segmentfault.com/a/1190000006932934
- mysql 用drop和delete方法删除用户的区别
在学习drop方法删除用户时,按照书上讲的一直没操作成功,后来到网上查了点其他资料,才弄明白drop的方法,贴出来和大家分享一下. (方法一)drop user 用户名; 语法:drop user 用 ...
- Java 泛型 <? super T> 中 super 怎么 理解?与 extends 有何不同?
看知乎:https://www.zhihu.com/question/20400700 了解的越多,就会发现,越多不了解.
- css3 同时加载两个动画
最近在做H5,遇到这样的需求(如题) 先上一部分代码: .cur .p1d1d4{ width: 3rem; margin: 2rem 5.3rem 0 0; -webkit-animat ...