a我考网

 找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 74|回复: 1

[综合] Oracle辅导:Oracle中常用的SQL语句语法二

[复制链接]
发表于 2012-8-4 13:54:49 | 显示全部楼层 |阅读模式
五.权限打点 (DCL) 语句 / I/ I/ z  Z8 y# O5 R3 a
  1.GRANT         赋于权限' U: R: W; z  _- a. b
  常用的系统权限集结有以下三个:
1 o( \$ M' O# C" ^. u; f  CONNECT(根基的毗连), RESOURCE(轨范开发), DBA(数据库打点)* l- Z& ~5 N7 X' w8 j
  常用的数据对象权限有以下五个:8 M# W& w; a+ ]  b' i6 S
  ALL          ON 数据对象名,          SELECT ON 数据对象名,          UPDATE ON 数据对象名,
- M5 ]* w+ d* A; }! Z  DELETE          ON 数据对象名,   INSERT ON 数据对象名,    ALTER   ON 数据对象名8 }3 Z' M* _. o7 j
  GRANT CONNECT, RESOURCE TO 用户名;
5 u! o9 E: \% G, p6 t  P  GRANT SELECT ON 表名 TO 用户名;
$ X$ G7 }; x8 p% x2 D  GRANT SELECT, INSERT, DELETE ON表名 TO 用户名1, 用户名2;/ D% q- z# ?/ M8 D' R. L) q, Z
  2.REVOKE 收受接管权限
( e) _% B* d' L- x- Y3 V2 |& Q  REVOKE CONNECT, RESOURCE FROM 用户名;8 B7 p2 f: U1 B' ?
  REVOKE SELECT ON 表名 FROM 用户名;
2 V9 @7 ]2 g+ T  REVOKE SELECT, INSERT, DELETE ON表名 FROM 用户名1, 用户名2; 以下是MS SQL4 p$ L7 Z) T6 k$ V5 o: W
  SQL分类:
- k0 C! ]: P" {/ o' B/ s8 H4 m+ D; ]  DDL—数据界说说话(CREATE,ALTER,DROP,DECLARE)
$ s4 [- g* R, Q* i2 U2 C  DML—数据独霸说话(SELECT,DELETE,UPDATE,INSERT)
  z  B+ X6 V2 r8 Z+ f7 f  DCL—数据节制说话(GRANT,REVOKE,COMMIT,ROLLBACK)! [: k3 D) W- E8 Q7 Z5 u, r
  首先,简要介绍基本语句:$ k; T# d  L" S& J9 c# }+ R8 X
  1、声名:建树数据库
- d: Z* [4 s  P  CREATE DATABASE database-name
( {. O+ }3 w& V' g  2、声名:删除数据库
0 P$ H4 S" f5 H/ }( H" ?9 c$ a  drop database dbname
9 i9 x% Z% q, H  3、声名:备份sql server% O! T4 c5 \7 ~3 E) X2 i2 N8 i0 a
  --- 建树 备份数据的 device
, Z/ v# x, M# i6 ]9 b  USE master; j' d& d+ v! L7 \" R9 g
  EXEC sp_addumpdevice 'disk', 'testBack',
; U* t( J9 s/ {: G- B, U& [  'c:mssql7backupMyNwind_1.dat'
; {7 p! j6 V/ C( k! Z$ b, {  --- 起头 备份/ J# W$ R" w+ j  _
  BACKUP DATABASE pubs TO testBack' u" i2 c/ ~, a$ Q
  4、声名:建树新表# y0 q' d5 A0 q3 e* h+ [6 K) l
  create table tabname(col1 type1 [not null] [primary key],col21 j0 R$ k4 Z: J8 K6 F4 X+ ^5 p9 `
  type2 [not null],..)
& r3 S. J9 l6 O+ A* {, [0 J: b' I% U  按照已有的表建树新表:: ]! h. x! Q  c- s8 M# p
  A:create table tab_new like tab_old (使用旧表建树新表)
9 h4 S; X3 u& Q  e, g8 \' J6 k  B:create table tab_new as select col1,col2… from tab_old% z1 a" q$ y4 o' c0 V7 r, T
: ?+ t/ J' ]2 |- J) y
  definition only
回复

使用道具 举报

 楼主| 发表于 2012-8-4 13:54:50 | 显示全部楼层

Oracle辅导:Oracle中常用的SQL语句语法二

</p>  5、声名:删除新表drop table tabname
6 S0 ~# _$ d6 U0 Q0 V- H( r  6、声名:增添一个列$ O) |( m2 U# [; c: z
  Alter table tabname add column col type! z: V& ?- J" J& f5 r) f
  注:列增添后将不能删除。DB2中列加上后数据类型也不能改变,独一能改变的是增添varchar类型的长度。
$ [/ o1 R4 a& \  7、声名:添加主键: Alter table tabname add primary key(col)) k; M! P* J- m& e% v/ z
  声名:删除主键: Alter table tabname drop primary key(col)) K% f2 s# C% U! Z( {: L
  8、声名:建树索引:create [unique] index idxname on tabname(col ….)* q' p" f& Q: M+ w1 v5 l/ H9 M
  删除索引:drop index idxname
/ B7 y' V" k4 ?. e- y: `( d  注:索引是不成更改的,想更改必需删除年夜头建。
" b3 ?3 V/ R5 e4 s4 W3 N2 J& Z) N  9、声名:建树视图:create view viewname as select statement
( q' f& x5 O9 D7 @  V  删除视图:drop view viewname
3 ]4 e# a4 a0 I. o' l  10、声名:几个简单的根基的sql语句
5 D2 b" `# N3 Y* D* v/ ^7 l( V  选择:select * from table1 where 规模; j' z9 ?! K6 R
  插入:insert into table1(field1,field2) values(value1,value2)
7 s& G* ?3 R+ M+ f# Z$ y3 z  删除:delete from table1 where 规模) H+ l/ u' P: P' f8 |
  更新:update table1 set field1=value1 where 规模
+ W, x% F9 }# R5 G5 b# n8 c4 E' H  查找:select * from table1 where field1 like ’%value1%’ --
+ t0 a  O5 [8 u/ A$ U* [% P3 P- \  -like的语法很精妙,查资料!  @8 J7 h# U/ x% v% Y' l1 p4 F
  排序:select * from table1 order by field1,field2 [desc]
+ G7 a* [5 p' q. H  总数:select count * as totalcount from table1' S: V4 F: C& C( t7 q; R4 w
  乞降:select sum(field1) as sumvalue from table1
$ Y! ], O9 k5 [5 e& }9 ^  平均:select avg(field1) as avgvalue from table1
, V# A2 z" ^; G  最年夜:select max(field1) as maxvalue from table1
" G1 S, p: P! q9 u: i# \5 s  B$ z8 }  最小:select min(field1) as minvalue from table1
/ D9 b2 J. V& [5 v* t4 x  11、声名:几个高级发芽运算词
% l8 h. ^6 m6 ?* |/ H7 \. Z2 ]  A: UNION 运算符
$ T6 r& w# _. \4 @% J3 |  UNION 运算符经由过程组合其他两个结不美观表(例如 TABLE1 和 TABLE2)并消去表中任何一再行而派生出一个结不美观表。当 ALL 随 UNION 一路使用时(即UNION ALL),不用除一再行」现情形下,派生表的每一行不是来自TABLE1 就是来自 TABLE2。8 Z9 P9 h3 u$ n' O5 ^: K
  B: EXCEPT 运算符6 W" ?( z" U. u, [
  EXCEPT 运算符经由过程搜罗所有在 TABLE1 中但不在 TABLE2 中的行并消弭所有一再行而派生出一个结不美观表。当 ALL 随 EXCEPT 一路使用时 (EXCEPTALL),不用除一再行。; G) M: F- J. {+ d& p( a: |
  C: INTERSECT 运算符
5 {% b) c( W7 ]9 n  INTERSECT 运算符经由过程只搜罗 TABLE1 和 TABLE2 中都有的行并消弭所有一再行而派生出一个结不美观表。当 ALL 随 INTERSECT 一路使用时(INTERSECT ALL),不用除一再行。
" y4 p( B* g/ F& ]! V+ ]& z  注:使用运算辞书几个发芽结不美观行必需是一致的。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|Woexam.Com ( 湘ICP备18023104号 )

GMT+8, 2024-5-15 21:28 , Processed in 0.341733 second(s), 23 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表