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 基础知识梳理( ...
随机推荐
- Django session cookie 上传文件、详解
session 在这里先说session 配置URL from django.conf.urls import patterns, include, url from django.contrib i ...
- Azure AD Connect 手动同步
我们目前采用工具Azure AD Connect 目录同步工具将本地域控制器的用户信息同步至office365和Azure 在之前目录同步工具中使用Windows 任务计划程序或单独的 Windows ...
- replace和translate的用法
select replace ('111222333444','222','888') from dual;with tmp as(select 'aabb/123\:cde工人' s from du ...
- IDEA快捷键
[常规] Ctrl+Shift + Enter,语句完成 "!",否定完成,输入表达式时按 "!"键 Ctrl+E,最近的文件 Ctrl+Shift+E,最近更 ...
- C语言标准历史发展轨迹
ISO/IEC 9899:1990 +ISO/IEC 9899:1990/Amd 1:1995 +ISO/IEC 9899:1990/Cor 1:1994 +ISO/IEC 9899:1990/Cor ...
- Map工具系列-07-TFS变更集提取工具
所有cs端工具集成了一个工具面板 -打开(IE) Map工具系列-01-Map代码生成工具说明 Map工具系列-02-数据迁移工具使用说明 Map工具系列-03-代码生成BySQl工具使用说明 Map ...
- UOJ58 【WC2013】糖果公园
本文版权归ljh2000和博客园共有,欢迎转载,但须保留此声明,并给出原文链接,谢谢合作. 本文作者:ljh2000 作者博客:http://www.cnblogs.com/ljh2000-jump/ ...
- javaweb查看后台session和request所有的值
遍历session @RequestMapping(value ="/test2") public String upload2( HttpSession session) { E ...
- docker 配置操作指导
1.下载程序包 安装包 https://github.com/boot2docker/windows-installer/releases(这个地址国内下载很慢) 或这个:http://www.sof ...
- ajax-登陆+验证码
登陆用户名和密码判断+验证码验证 省略dao层和service层 1.生成验证码的number.jsp <%@ page contentType="image/jpeg" l ...