1.创建用户

SQL> -- 例如创建一个用户名为xiaoming,密码为a123的用户

SQL> create user xiaomingidentified by a123;

用户已创建。

SQL> show user

USER 为 "SYS"

2.给用户授予权限

SQL> -- 给用户xiaoming授予权限

SQL> grant connect,resource,dba to xiaoming;

授权成功。

SQL> -- 登录xiaoming用户

SQL> conn xiaoming/a123

已连接。

3.创建表空间

SQL> -- 创建表空间

SQL> create tablespace xiaoming_data logging datafile 'E:\xiaoming_data.dbf' size 50M;

表空间已创建。

SQL> /*

SQL> 这个可以通过alter方法,重新定义默认表空间的:

SQL> sql:

SQL> alter user username default tablespace userspace;

SQL> 解释:以上语句就是说给username用户重新指定表空间为userspace;

SQL> 扩展:创建用户的时候指定表空间。

SQL> sql:create user username identified by userpassword default tablespace userspace;

SQL> */

SQL> -- 给用户guoming指定表空间guoming_data

SQL> alter user guoming default tablespace guoming_data;

用户已更改。

4.创建表

SQL> -- 1.创建users表

SQL>create table users (

2  userName char(18) primary key not null,

3  password varchar(12) not null,

4  nickName varchar(20),

5  sex char(2),

6  age number(3),

7  address varchar(40),

8  Email varchar(40) not null,

9  phone char(11)

10* )

SQL> /

4.1查看已经创建的表

SQL> select * from tab;

TNAME                          TABTYPE  CLUSTERID

------------------------------ ------- ----------

USERS                          TABLE

ADMIN                          TABLE

JOB                            TABLE

ENLIST                         TABLE

ID                             TABLE

ACCEPTANCE                     TABLE

MESSAGE                        TABLE

DATA                           TABLE

NEWS                           TABLE

已选择9行。

5.添加外键

SQL> /*

SQL> 1.创建外键格式:alter table 子表名 add constraint 外键名 foreign key(外键字段) references 父表(字段)

SQL> 2.删除外键格式:alter table 表名 drop constraint 外键名

SQL> 如:删除enlist的外键

SQL> alter table enlist drop constraint FK_ID;

SQL> */

SQL> --为enlist表设置ID外键

SQL> alter table enlist add constraint enlist_ID foreign key(ID) references ID(ID)

SQL> /

表已更改。

SQL> --为acceptance表设置ID外键

SQL> alter table acceptance add constraint acceptance_ID foreign key(ID) references ID(ID);

表已更改。

6.创建索引

SQL> /*

SQL> 创建索引 格式:create [unique] index 索引名 on 表(字段);

SQL> 删除索引 格式:drop index 索引名;

SQL> 查找一个表的有几个索引(索引名)格式:select index_name from user_indexes where table_name=upper('表名')

SQL> */

SQL> --为表enlist表和acceptance表的外键创建索引

SQL>create index enlist_index on enlist(ID);

索引已创建。

SQL> create index acceptance_index on acceptance(ID);

索引已创建。

7.触发器(这里是自增触发器)

SQL> /* 创建触发器

SQL>  对于自增案例:1.先创建自增序列 2.创建触发器

SQL> */

SQL> --创建enlist的自增序列

SQL> create sequence s_enlist

2  increment by 1

3  start with 1

4  nomaxvalue

5  nocycle

6  nocache;

序列已创建。

SQL> --创建enlist表的触发器t_enlist

SQL> create or replace trigger t_enlist

2  before insert on enlist

3  for each row

4  begin

5  select s_enlist.nextval into :new.enlistId from dual;

6  end;

7  /

触发器已创建

注:new.触发字段

8.创建视图(这里是整合外键内容,及整合两张表)

SQL> /*

SQL> 创建视图 :格式 create or replace 视图名 select ... from 表1,表2 where ..

SQL> 删除视图 : 格式 drop view 视图名;

SQL> */

SQL> -- 创建整合enlist表和ID信息的视图

SQL> create or replace view v_enlist

2  as

3  select enlist.enlistId,enlist.ID,ID.name,ID.sex,ID.age,enlist.expenses,enlist.enTime from enlist,ID

4  where enlist.ID=ID.ID;

视图已创建。

SQL> -- 创建整合acceptance表和ID信息的视图

SQL> create or replace view v_acceptance

2  as

3  select acceptance.accId,acceptance.jobName,acceptance.ID,ID.name,ID.sex,ID.age,

4  acceptance.dept,acceptance.wokeDate from acceptance,ID where acceptance.ID=ID.ID

视图已创建。

9.存储过程(这里是查找用户是否注册)

SQL> /*

SQL> 创建一个存储过程 格式 : create or replace procedure 函数名(变量1 类型,变量2 类型..) as ... begin select .. ;

SQL> exception

SQL> when 异常名 then

SQL> ...

SQL> end 函数名;

SQL> /

SQL> */

SQL> -- 创建一个查看用户名是否已经注册的存储过程find_users

SQL> create or replace procedure

2  find_users(u_name number)

3  as

4  name number(18);

5  begin

6  select userName into name from users where u_name=users.userName;

7  dbms_output.put_line(name||'用户已经被注册了!');

8  exception

9  when no_data_found then

10  dbms_output.put_line('该用户名未被注册!');

11  end find_users;

SQL> /

过程已创建。

下面就可以插入数据了,大家好好复习!

 

10.修改表的字段属性

alter table 表名 modify 字段名number(5,2);

11.删除有户名和表空间(彻底)

drop user 用户名 cascade ;

drop tablespace 表空间名 including contents and datafiles cascade constraints ;

转载于:https://www.cnblogs.com/xiaomingzaixian/p/5585783.html

Oracle中sql相关的命令相关推荐

  1. oracle大于条件,oracle中sql语句中的in的条件数量大于1000有问题

    oracle中sql语句中的in的条件数量大于1000有问题 oracle中sql语句中select * from t_Test t where  t.Id in(1,2,3......)/*数量不能 ...

  2. oracle中的set命令,oracle中常用的set命令

    time:2008/2/1 author: skate oracle中常用的set命令 前一阵在做数据库数据的转移,所以就写个shell脚本来自动化完成,用shell脚本生成sql脚本时,就要用到 o ...

  3. oracle sql连接符号,Oracle中sql语句(+)符号代表连接的使用讲解

    oracle中sql语句(+)符号代表连接 (+)在=前边为右连接 (+)在=后边为左连接 SELECT a.*, b.* from a(+) = b就是一个右连接,等同于select a.*, b. ...

  4. oracle12测试骤,Oracle中SQL语句解析的步骤

    我们都知道在Oracle中每条SQL语句在执行之前都需要经过解析,这里面又分为软解析和硬解析.那么这两种解析有何不同之处呢?它们又分别是如何进行解析呢?Oracle内部解析的步骤又是如何进行的呢?下面 ...

  5. Linux中mod相关的命令 内核模块化 mod相关命令都是用来动态加载内核模块/驱动程序模块...

    Linux中mod相关的命令 内核模块化   mod相关命令都是用来动态加载内核模块/驱动程序模块 http://baike.baidu.com/link?url=lxiKxFvYm-UfJIxMjz ...

  6. Oracle中SQL解析的流程

    Oracle中SQL解析的主要流程: 我们说的游标概念比较复杂,它可以是客户端程序中的游标,服务进程中的私有游标,以及服务器端共享池里的共享游标.假设一个游标被打开了,一般来说它的共享游标信息(包括执 ...

  7. 查询oracle 表达小,oracle中sql语句小练习(使用连接查询)

    假设A(m,n,p),B(m,n,p) --1.A表中有某一项m而B表中没有 使用左连接查询: select a.* from A a left join B b on a.m=b.m where b ...

  8. oracle中sql查询

    oracle中sql查询 一.查询 别名 拼接 nvl替换null值 distinct数据去重 修改列宽(控制sqlplus) 2.排序order by 3.查询条件where 3.函数 单行函数 聚 ...

  9. oracle中sql语句(+)符号代表连接

    oracle中sql语句(+)符号代表连接 (+)在=前边为右连接 (+)在=后边为左连接 SELECT a.*, b.* from a(+) = b就是一个右连接,等同于select a.*, b. ...

  10. sql oracle 递归查询语句,oracle递归函数 oracle中SQL递归查询

    关于oracle递归调用的自定义函数如何结束 比如存储过程a中有b,b中含a.用return结束判断,执行还是锁表,怎么解决 关于oracle递归调用的自定义函数如何结束 可以调用. C语言最基本的模 ...

最新文章

  1. 使用ueditor小结
  2. cordova报错:Could not find an installed version of Gradle either in Android Studio, or on your system
  3. access如何查询两张表的内容_为什么可以的话,不要使用星号 *,而是相应的字段名来进行查询 MySQL内连接如何选择驱动表
  4. centos mysql 远程连接_Linux下开启MySQL的远程连接
  5. 用wamper打开php源码_php源码该怎么设置数据库
  6. 信管专业c语言考什么,计算机信息管理专业卫生事业单位招聘考试笔试模拟题(十)...
  7. Libevent初探
  8. linux input输入子系统分析《三》:S3C2440的触摸屏驱动实例
  9. ​从程序员到 33 岁的亿万富翁
  10. DELL T420塔式服务器RAID配置及OS安装
  11. 28线性空间02——坐标、坐标变换与基变换、过度矩阵
  12. 三层交换机连接路由器时配置OSPF注意事项
  13. Google Earth Engine——美国人口数据可视化分析
  14. 通过爬虫在GEO数据库上获取对应SRR号
  15. 为什么电脑运行越来越慢?解决方法又是什么呢?
  16. MT2502 datasheet,MT2502硬件设计,MT2502芯片资料
  17. CentOS 7 安装好后,无法使用小键盘的解决办法
  18. matlab取矩阵元素的模,matlab – 提取矩阵元素
  19. 电商生鲜网站开发(三)——后台开发:商品分类模块-Redis/Swagger/统一身份校验/IDEA技巧
  20. Python文件,照片批量重命名脚本

热门文章

  1. Css实现页面元素置顶时悬浮
  2. matlab 找椭圆中心点,点差分法matlab解椭圆型偏微分方程
  3. PHP中的数组(查找)
  4. 全网首发:LINUX右键新建时的模板问题
  5. 转载:ProGuard 混淆规则说明
  6. BAT中取得一个命令的执行结果
  7. 帮助干活,朋友馈赠了购物卡
  8. 获取Activity当前屏幕方向。
  9. 未解决:运行EtherCalc出错:Error: Cannot find module 'zappajs'
  10. Ubuntu安装GitKraken