• Oracle基础语法 一


    表空间操作

    1.创建一个表空间

    create tablespace emp(空间名) datafile 'emp.dbf' size 10M autoextend on ;   →表空间名字 /  物理文件地址 和名字 / 空间大小

    2.修改表空间大小

    alter database  datafile ' emp.dbf ' resize 20M ;    →文件名字  /  修改的大小

    3.查看表空间

    select * from dba_tablespaces ;  (查询的内容比较详细) 或者 

    select * from v$tablespace; 

    4.删除表空间,不删除dbf物理文件

     drop tablespace emp(空间名字)

    5.删除表空间同时 删除dbf物理文件

    drop tablespace emp including contents and datafiles; 


    用户的操作

    1.创建用户

    create user shx identified by 123 default tablespace emp;       →用户名 / 密码  / 表空间名称

    2.给用户授权

    grant dba to shx  → 权限名 / 用户名

    3.撤销权限

    revoke dba from shx ;→ 权限名  / 用户名

    4.删除用户(用户已连接报错删不掉用)

       1.查看用户连接状态

    select username,sid,serial# from v$session;

      2.找到要删除的sid和serial 并且删除

    alter system kill session 'xx,xx';

    3.删除用户

    drop user shx(用户名) cascade ;       →用户名


    表的操作

    1.切换用户登录

    conn  用户名 / 密码 

    2.查询该用户下面所有的表

    select * from tab;

    3.查看当前表用户

    show user;

    4.创建序列

    create sequence seq_student;

    5.创建表

    create table 表明(

     sid number not null primary key,

    sname varchar2(10) not null,

    gz numeric(7,2) check (gz between 5000 and 50000)

    );

    6.更改表字段

    alter table student(表明) modify (sname varchar2(20) not null);       →  表明     字段名

    7.查看表结构

    desc student;      →表明

    8.添加列

    alter table student add (age number(10,0));           →表明    字段名

    9.删除列

    alter table student drop coiumn sex;     →表明  关键字  字段名

    10.删除多列

    alter table student drop ( password ,cid);   → 表明   字段

    11.删除数据不删除表结构

    truncate table student ;     →表明

    12.给表重命名 

    rename student to students ;

    13.给列重命名

    alter table 表明 rename column 列明 to 新列明 ;

    14.添加主键

    alter  table student add primary key(字段名);   →表明

    15.删除主键

    alter table student drop primary key(字段名);  →表明

    16.给表中的某一列添加唯一约束

    alter table student add constraint u_sname unique(sname);

    17删除表

    drop table 表明;

    18.创建视图

    create view 视图名 as select statment;

    19.删除视图

    drop view 视图名;


    数据的操作

    1.插入一条数据

    insert into 表明(字段名) values(值);

    例:insert into emp(empid) values(1);

    2.更新修改一条数据

    update 表明 set 字段名='值' where 字段名 ='值';

    例:update emp set empname='小明' where empid =1;

    3.条件查

    查询1999年后出生 并且性别为女的员工信息 并按照年份降序排

    select * from emp

    where to_char(bir,'yyyy')>1999

    and sex = '女'

    order by to_char(bir,'yyyy')desc;          → to_char 作用是将日期只取年份

    4.取年份

    select to_char(字段名,'yyyy') from 表明;    →代表的是日期的字段

    5.查询年龄

    select  floor( months_between(sysdata,bir)/12) from emp ;     →关键字   sysdata代表的现在时间

    6.||字符串连接符

    select '员工编号是:' || empid || '姓名是:' || name from emp;

    7.行号  rownum 只支持 <    <=

    select name,bir,rownum from emp where rownum<=5;

    8.排名

    select row_number() over(order by 字段名 desc/asc)  名次 from 表明;

    例子:

    select empid,name,height,row_number() over(order by height desc) 名次 from emp;             →关键字

    9.身高相同 名次显示相同 不跳号

    select empid,name,height,dense_rank() over (order by heiger) 名次 from emp ;

    10.左连接

    select * from  emp lefft join kq on emp.emp.empid=kq.empid;

     或者

    select * from emp,kq where emp.empid = kq.empid(+);

    11.右连接

    select * from  emp right join kq on emp.emp.empid=kq.empid;

     或者

    select * from emp,kq where emp.empid(+) = kq.empid;

    12.全连接

    select * from emp full join kq on emp.empid=kq.empid;

    13.模糊查询

    select * from 表明 where 字段 like '%条件%' ;

  • 相关阅读:
    bzoj 3930: [CQOI2015]选数
    bzoj 2301: [HAOI2011]Problem b
    HDU 1695 GCD
    2017ACM/ICPC广西邀请赛-重现赛 1007.Duizi and Shunzi
    2017ACM/ICPC广西邀请赛-重现赛 1010.Query on A Tree
    2017ACM/ICPC广西邀请赛-重现赛 1004.Covering
    P3501 [POI2010]ANT-Antisymmetry
    P1171 售货员的难题
    P3385 【模板】负环
    P1659 [国家集训队]拉拉队排练
  • 原文地址:https://www.cnblogs.com/shxkey/p/11813921.html
Copyright © 2020-2023  润新知