• Oracle 常用语句整理


    Oracle 常用语句整理

      最近做了份大型数据库作业。遇到了一些问题,在网上找的很是辛苦,于是,将一些常用的语句记录下来,方便大家学习。都是一些基本的东西。如果忘了,可以来看看。

    1.创建临时表空间

    create temporary tablespace car_data    //car_data,表空间名  
    tempfile 'C:UsersAdministratorDesktopcar_data.dbf'//表空间路径 size 50m autoextend on next 50m maxsize 20480m extent management local;

      

     2.创建数据表空间

    SQL> create tablespace car_data
      2  logging
      3  datafile 'C:UsersAdministratorDesktopcar_data.dbf'
      4  size 50m
      5  autoextend on
      6  next 50m maxsize 20480m
      7  extent management local;
    

        

    3.创建用户并指定表空间

        创建一个用户名为admin 密码为888888的用户

    SQL> create user admin identified by 888888
      2  default tablespace car_data;
    
    User created
    

    4.给刚才创建的用户授权

    SQL> grant connect,resource,dba to admin;
     
    Grant succeeded
    

    5.创建表

    SQL> create table car(
      2         carId number(20) not null primary key,
      3         carName varchar(20),
      4         carType varchar(20),
      5         carNum varchar(20),
      6         carAge int);
     
    Table created
    

    6.修改表

    //修改表car,添加check约束
    
    alter table 表名 add constraint check名 check(列名 约束);

    alter table car add constraint car_carAge check(carAge between 0 and 10);
    //设置外键

    alter table 表名 add constraint 外键名 foreign key (列名) references 表名(列名);

    alter table car add constraint userId foreign key(userId) references userN(userId);

    //修改一个列的数据类型(一般限于修改长度,修改为不同类型时有很多限制)

    alter table 表名 modify(列名 数据类型);

    alter table car modify(carid number(10));

    //修改列名

    alter table 表名 rename column 当前列名 to 新列名;

    alter table car rename column carid to carcar;

    //修改表名

    alter table 当前表名 rename to 新表名;

    alter table car rename to carcar;

    //删除列

    alter table 表名 drop colunm 列名;

    alter table car drop colunm carname;

    //添加列
    alter table 表名 add(column1 datatype,column2 datatype...);

    alter table car add(car1 number(20),car2 number(20),...);

    7.创建userN表

      里面有建表和添加外键及主键

    SQL> create table userN(
      2         userId number(20) not null primary key,
      3         licNum number(20),
      4         userName varchar(10),
      5         sex varchar(2),
      6         userAge int,
      7         userNative varchar(10),
      8         userAddress varchar(100),
      9         userNum number(13),
     10         carId number(20),
     11         constraint carId FOREIGN KEY (carId) REFERENCES car(carId));
      //添加外键的方法 
    Table created
    

    8.插入数据的语句

    insert into car values('201311010101','宝马','宝马X6','jk02c8',3);
    

    9.更新数据的语句

    //修改某一数据。例如:将表salary中编号为110001的职工收入改为10000
    update salary set income=10000 where employeeid=110001;

    //修改某一列数据。例如:给每个职工增加收入100元
    update salary set income=income+100;

    10.trigger触发器

    create or replace trigger 触发器名
    before/after delete/insert/updata
    on 表名或视图名 
    for each row//表示行级触发器,可以百度了解更多
    begin
        写一些操作
        例如:插入数据
    insert into recyclecar(carid,carname) values(:old.carid); end;
    //删除触发器
    drop trigger droptrigger;

    11.查询

    (1)//查询car表里面车牌号为888888的车的信息(单条件)
         SQL> select *from car
     	 2  where carnum = '888888';
     
    
    (2)//查询车牌号为888888并且carname为奔驰的车的所有信息(多条件)
    
        SQL> select *from car
      	2  where carnum='888888' and carname='奔驰';
    
    (3)//查询车牌号为888888的车主的所有信息(跨表查询)
        SQL> select *from Usern
      	2  where carid in(select carid from car where car.carnum='888888');
    
    (4)//查询车主的所有身份信息以及车信息(外连接)
        SQL> select *from usern left join car on(car.carid=userN.carid); 
    
    (5)//查询车牌号为888888的车主的所有身份信息以及车信息(外连接)
        SQL> select *from usern left join car on(car.carid=userN.carid)
     	 2  where carnum='888888';
    
    (6)//查询车名为宝马的用户信息(子查询)
            SQL> select *from usern where carid
          2  in(select carid from car where carname='宝马');
    
    (7)//查询换过尾灯且加过导航的奔驰车信息(多表连接)
        select *from car ,reparis,variation where rtype='尾灯' and vtype='加导航' and 	carname='奔驰';
    
    (8)//查询各种类型的车的数量分别为多少(分组加计数)
        select carname,count(*) 数量 from car group by carname; 
    

    12.视图和索引

    1.创建视图
    
    create view temp as select carid,cartype from car;
    2.创建索引
    create index cartype on car(cartype);

      

    暂时想不起来了,附上百度文库中oracle操作语句大全的链接:

    http://wenku.baidu.com/link?url=eFjmBNNTyJDY1HE0xjWk0BqyeiE0rphI9U58l3Oa3eXJzCTsywRCb3gRVSdjAzapDcgs62havhZ3gsp91xBdNfXi72LHwQWRod8AZx0zHFq

      

      

      

      

      

      

      

  • 相关阅读:
    【转】2008年中国.NET技术应用趋势分析
    VB计算器(给上学需要应付作业的应个急)
    创业失败的18个原因
    使用ChilkatDotNet组件构建网络爬虫程序
    使用文本编辑器开发和部署一个ASP.NET Web应用程序
    优化 SQL Server 查询性能
    【转】sql性能优化方法
    使用 SOS 对 Linux 中运行的 .NET Core 进行问题诊断
    MultiThread Of Member Functions
    汇编 中断调用表 (中断向量表)
  • 原文地址:https://www.cnblogs.com/wabi87547568/p/5076524.html
Copyright © 2020-2023  润新知