sql语句相关操作
create user test identified by test
default tablespace users
temporary tablespace temp
quota 3M on users; grant connect,resource to test with admin option; conn test/test show user;
alter user test identified by test1;//修改用户口令 grant create any view to scott;
revoke create any view from scott; grant select,update on dept to public;//授予实体权限
revoke update on dept from public; //回收实体权限 create role app_user identified by hello; //创建角色
grant create view to app_user; //授予创建视图权限
grant app_user to test; //角色授予用户,这些用户都具有这个角色的权限 create user WangMing identified by WangMing
default tablespace userwang
temporary tablespace tempwang
quota 3M on userwang; create user LiYong identified by LiYong
default tablespace userli
temporary tablespace templi
quota 3M on userli;
CREATE USER WangMing IDENTIFIED BY WangMing
DEFAULT TABLESPACE users
TEMPORARY TABLESPACE temp
QUOTA 3M ON users; CREATE USER LIYONG IDENTIFIED BY LIYONG
DEFAULT TABLESPACE users
TEMPORARY TABLESPACE temp
QUOTA 3M ON users; GRANT CONNECT,RESOURCE to WangMing WITH ADMIN OPTION;
GRANT CONNECT,RESOURCE to LIYONG WITH ADMIN OPTION; CREATE TABLE Mydept
(
DNO VARCHAR2(10),
DNAME VARCHAR2(10),
MANAGER VARCHAR2(10),
LOC VARCHAR2(10),
PHONE VARCHAR(10),
CONSTRAINT PK_Mydept PRIMARY KEY (DNO)
); CREATE TABLE Myemp
(
ENO VARCHAR2(10),
ENAME VARCHAR2(10),
AGE NUMBER(10),
JOB VARCHAR2(10),
SAL NUMBER(10),
DNO VARCHAR2(10),
CONSTRAINT PK_Myemp PRIMARY KEY (ENO),
CONSTRAINT FK_Myemp_To_Mydept FOREIGN KEY (DNO) REFERENCES Mydept (DNO)
);
INSERT INTO Mydept VALUES('','SALES','ZHAOSI','WuHan','');
INSERT INTO Myemp VALUES('','LIYONG',26,'SALESMAN',3400,'');
INSERT INTO Myemp VALUES('','SCOTT',24,'SALESMAN',3400,'');
INSERT INTO Myemp VALUES('','WANGMING',24,'SALESMAN',3400,''); INSERT INTO scott.Mydept VALUES('','OFFICE','ZHANGHENG','BeiJing',''); GRANT select(MAX(SAL)) ON Myemp TO ZHANGXIN;
CREATE TABLE Employee
(
ENO VARCHAR2(10),
ENAME VARCHAR2(10),
BIRTH VARCHAR(15),
JOB VARCHAR2(10),
SAL VARCHAR2(10),
DNO VARCHAR2(10),
STATE VARCHAR2(10),
PRIMARY KEY(ENO),
FOREIGN KEY(DNO) REFERENCE TO Department(DNO)
);
CREATE TABLE Department
(
DNO VARCHAR2(10),
DNAME VARCHAR2(10),
MAGNO VARCHAAR2(10),
LOC VARCHAR2(10),
PHONE VARCHAR2(12),
PRIMARY KEY(DNO)
); CREATE TABLE Teacher
(
Eno NUMERIC(4),
Sal NUMERIC(7,2),
PJob char(10),
CONSTRAINT PK_Teacher PRIMARY KEY(Eno) VALIDATE
); CREATE OR REPLACE TRIGGER Insert_Or_Update_Sal
BEFORE INSERT OR UPDATE ON Teacher
FOR EACH ROW
WHEN((NEW.PJob='教授') AND (new.Sal<4000))
BEGIN
select 4000 into:new.Sal from dual;
END;
/ INSERT INTO Teacher VALUES('','','教授');
INSERT INTO Teacher VALUES('','','教授');
INSERT INTO Teacher VALUES('','','教授'); CREATE TABLE Sal_log
(
Eno NUMERIC(4),
Sal NUMERIC(7,2),
Username char(80),
DDate TIMESTAMP,
CONSTRAINT PK_Sal_log PRIMARY KEY(Eno)
); CREATE OR REPLACE TRIGGER Insert_Sal
AFTER INSERT ON Teacher
FOR EACH ROW
BEGIN
INSERT INTO Sal_log VALUES(:new.Eno,:new.Sal,user,sysdate);
END;
/ CREATE TABLE Department
(
No NUMBER(12),
Name CHAR(40),
PRIMARY KEY(No)
); CREATE TABLE Students
(
No NUMBER(12),
Name CHAR(8),
Sex INTEGER DEFAULT 0,
Birthday DATE,
Class CHAR(40),
DeptNo NUMBER(12),
PRIMARY KEY(No),
FOREIGN KEY(DeptNo) REFERENCES Department(No)
); CREATE TABLE Course
(
No NUMBER(12),
Name CHAR(8),
Credit FLOAT,
PRIMARY KEY(No)
); CREATE TABLE SC
(
CNo NUMBER(12),
SNo NUMBER(12),
Grade FLOAT,
PRIMARY KEY(CNo,SNo),
FOREIGN KEY(CNo) REFERENCES Course(No),
FOREIGN KEY(SNo) REFERENCES Students(No)
); CREATE TABLE SC_U
(
CNo NUMBER(12),
SNo NUMBER(12),
Oldgrade FLOAT,
Newgrade FLOAT
); CREATE OR REPLACE TRIGGER SC_T
AFTER UPDATE OF Grade ON SC
FOR EACH ROW
WHEN (NEW.Grade>=1.1*OLD.Grade)
BEGIN
INSERT INTO SC_U(SNo,CNo,OldGrade,NewGrade)
VALUES(:OLD.SNo, :OLD.CNo, :OLD.Grade, :NEW.Grade);
END;
/ CREATE TABLE StudentInsertLog
(
InsertDate DATE,
InsertNumber NUMBER(12),
Operator CHAR(20)
); CREATE OR REPLACE TRIGGER Student_Count
AFTER INSERT ON Students
DECLARE
ICount NUMBER(12);
temp NUMBER(12);
BEGIN
SELECT COUNT(*) INTO temp FROM StudentInsertLog;
SELECT COUNT(*) INTO ICount FROM Students;
IF(temp<>0) THEN
SELECT InsertNumber INTO temp FROM StudentInsertLog
WHERE InsertDate = (SELECT MAX(InsertDate) FROM StudentInsertLog);
END IF;
INSERT INTO StudentInsertLog (InsertDate, InsertNumber, Operator)
VALUES(SYSDATE, ICount-temp,user);
END;
/
sql语句相关操作的更多相关文章
- [20190328]简单探究sql语句相关mutexes.txt
[20190328]简单探究sql语句相关mutexes.txt --//摘要:http://www.askmaclean.com/archives/understanding-oracle-mute ...
- [20190329]探究sql语句相关mutexes补充2.txt
[20190329]探究sql语句相关mutexes补充2.txt --//昨天测试sql语句相关mutexes,看看如果出现多个子光标的情况. 1.环境:SCOTT@book> @ ver1P ...
- 捷信达会员管理系统SQL语句相关
捷信达会员管理系统SQL语句相关 USE gshis GO SET ANSI_NULLS, QUOTED_IDENTIFIER ON GO /***************************** ...
- MySQL与SQL语句的操作
MySQL与SQL语句的操作 Mysql比较轻量化,企业用的是Oracle,基本的是熟悉对数据库,数据表,字段,记录的更新与修改 1. mysql基本信息 特殊数据库:information_sche ...
- SQL语句 远程操作数据库
--远程操作数据库SQL语句exec sp_addlinkedserver 'ITSV ', ' ', 'SQLOLEDB ', '211.81.251.85 'exec sp_addlinkedsr ...
- EF Core中执行Sql语句查询操作之FromSql,ExecuteSqlCommand,SqlQuery
一.目前EF Core的版本为V2.1 相比较EF Core v1.0 目前已经增加了不少功能. EF Core除了常用的增删改模型操作,Sql语句在不少项目中是不能避免的. 在EF Core中上下文 ...
- 使用Phoenix通过sql语句更新操作hbase数据
hbase 提供很方便的shell脚本,可以对数据表进行 CURD 操作,但是毕竟是有一定的学习成本的,基本上对于开发来讲,sql 语句都是看家本领,那么,有没有一种方法可以把 sql 语句转换成 h ...
- 使用Mysql执行SQL语句基础操作
SQL: 又叫结构化语言,是一种用来操作RDBMS的数据库语言,在关系型数据库中都支持使用SQL语句,如oracle.mysql等等. 注意: 在关系型数据库中sql语句是通用的,而在非关系型数据库 ...
- java通过反射拿到mybatis中的sql语句并操作
private static final int MaxBatchLength = 100; public void updateBatch(List<T>list, BaseMapper ...
随机推荐
- Linux/UNIX套接字连接
套接字连接 套接字是一种通信机子.凭借这样的机制.客户/server系统的开发工作既能够在本地单机上进行.也能够夸网络进行. 套接字的创建和使用与管道是有差别的.由于套接字明白地将客户和server区 ...
- [转] PostgreSQL学习手册(函数和操作符)
一.逻辑操作符: 常用的逻辑操作符有:AND.OR和NOT.其语义与其它编程语言中的逻辑操作符完全相同. 二.比较操作符: 下面是PostgreSQL中提供的比较操作符列表: 操作符 描述 < ...
- 第二章:开始开发mod前你需要知道的一些事情
<基于1.8 Forge的Minecraft mod制作经验分享> 是的童鞋,别着急.不管我写的再认真也不可能面面俱到,那么如果遇到了什么问题怎么办呢?所以咱必须先掌握一些基础的东西,这样 ...
- C#_串口程序_二次打包_事件响应
using System;using System.IO.Ports;using System.Windows.Forms; namespace Dll_Serial_Comm{ public ...
- Autofac 一个使用Demo
一:接口 二:实现: 三:调用: 首先上图: 一:接口代码 public interface IPersonDa { PersonEntity Get(int id); } 二:实现 public c ...
- apache的500错误是写到哪个文件里面
apache的500错误是写到哪个文件里面
- 学习WCF(1)
1. 什么是WCF WCF是创建面向服务应用程序的一个框架,用WCF, 你可以发送异步消息. 一个服务的终结点可以是服务宿主在IIS上面,也可以是一个服务宿主在应用程序上面.一个终结点也可以是客户端的 ...
- checking for oracle home incompatibilities failed
安装Oracle软件的过程中,报错: 出错原因: 这个错误主要是oracle上一次安装失败,而没有删除干净而留下的目录文件造成. 解决办法: 清除原先目录下的文件,再retry或者重新安装即可. 示例 ...
- PHP 错误处理
PHP 错误处理 在 PHP 中,默认的错误处理很简单.一条错误消息会被发送到浏览器,这条消息带有文件名.行号以及描述错误的消息. PHP 错误处理 在创建脚本和 Web 应用程序时,错误处理是一个重 ...
- oracle过滤名字中含有_的行
select * from emp where ename like '%\_%' escape '\'; escape 定义转义字符串,这样转义字符串后的字符就是普通字符.