zoukankan      html  css  js  c++  java
  • Oracle基础——学习笔记

    一【用户】syssystemsysmanscott

    1、查看数据库所有用户(dba_users数据字典):

    select username from dba_users;

    2、查看当前用户:

    show user;

    3、启用(解锁)数据库用户:

    alter user username account unlock;

    二【表空间】

    数据库与表空间的关系:一个数据库可以有一个或多个表空间;

    表空间与数据文件的关系:一个表空间对应一个数据文件;

    永久表空间:主要用于存放表、视图、存储过程;

    临时表空间:主要用于存放一些数据库操作当中中间执行的过程,当执行完成之后存放的内容会自动被释放掉,不进行永久性保存;

    UNDO表空间:主要用于保存事务所修改数据的旧值,也就是说被修改之前的数据;

    1、查看用户的表空间(dba_tablespaces和user_tablespaces、dba_users和user_users数据字典):

    select tablespace_name from dba_tablespaces;

    select tablespace_name from user_tablespaces;

    select username,default_tablespace,temporary_tablespace from dba_users;

    select username,default_tablespace,temporary_tablespace from user_users;

    2、设置用户的默认或临时表空间:

    alter user username defalut|temporary tablespace tablespace_name;

    3、创建表空间:

    create [temporary] tablespace tablespace_name tempfile|datafile 'xx.dbf' size xx;

    4、查看表空间对应数据文件的路径(dba_data_files和dba_temp_files数据字典):

    select tablespace_name,file_name from dba_data_files;

    select tablespace_name,file_name from dba_temp_files;

    5、修改表空间的状态:

    (联机或脱机)

    alter tablespace tablespace_name online|offline;

    (只读或可读写)

    alter tablespace tablespace_name read only|read write;

    6、修改表空间的数据文件:

    (增加数据文件)

    alter tablespace tablespace_name add datafile 'xx.dbf' size xx;

    (删除数据文件)

    alter tablespace tablespace_name drop datafile 'xx.dbf';

    7、删除表空间:

    drop tablespace tablespace_name [including contents]--包括数据文件一并删除

    三【认识表】

    1、——基本存储单位;二维结构;行和列;

    约定: 

    1)、每一列数据必须具备相同的数据类型;

    2)、类名唯一;

    3)、每一行数据的唯一性;

    2、数据类型——字符型、数值型、日期型、其他类型

    字符型——char(n)[n最大值为2000]、nchar(n)[n最大值为1000]

            ——varchar2(n)、nvarchar2(n)

    数值型——number(p,s)[p为有效数字,s为小数点后的位数]

            ——float(n)

    日期型——date[表示范围:公元前4712年1月1号到公元9999年12月31号,可精确到秒]

            ——timestamp[可精确到毫秒]

    其他类型——blob[可存放4GB的数据,以二进制形式来存放]

               ——clob[可存放4GB的数据,以字符串形式来存放]

    1、创建表:

    create table table_name(

    column_name datatype,

    ……

    );

    2、修改表:

    (添加字段)

    alter table table_name add column_name datatype;

    (更改字段数据类型)

    alter table table_name modify column_name datatype;

    (删除字段)

    alter table table_name drop column column_name;

    (修改字段名)

    alter table table_name rename column old_column_name to new_column_name;

    (修改表名)

    rename table_name to new_table_name;

    3、删除表:

    truncate table tablename;--不删除表,只清空table_name表中的数据,速度快

    drop table table_name;--删除表

    四【操作数据】

    1、插入数据:

    insert into table_name (column1,column2,...) values(value1,value2,...);

    2、给字段添加默认值:

    create table table_name(column1 datatype default sysdate,column2 datatype,...);

    alter table table_name modify column_name default sysdate;

    3、复制数据:

    create table table_name1 as select column1,column2,... from table_name2;

    insert into table_name1 [(column1,...)] select column1,... from table_name2;

    4、修改数据:

    update table_name set column1=value1,... [where conditions];

    5、删除数据:

    delete from table_name [where conditions];

    truncate table table_name;

    五【约束】

    作用:定义规则;确保完整性;

    1、非空约束

    1)、添加非空约束:

    create table table_name(column_name datatype not null,...);

    alter table table_name modify column_name datatype not null;

    2)、删除非空约束:

    alter table table_name modify column_name datatype null;

    2、主键约束[一张表只能设计一个主键约束;主键约束可以由多个字段构成(联合主键或复合主键)]

    1)、添加主键约束:

    create table table_name (column_name datatype primary key,...);

    create table table_name (column_name1 datatype,column_name2 datatype,...,

    constraint constraint_name primary key(column_name1,column_name2,...));--创建联合主键

    2)、修改表添加主键约束:

    alter table table_name add constraint constarint_name primary key (column1,column2,...);

    3)、重命名主键约束:

    rename constraint old_constraint_name to new_constraint_name;

    4)、启用|禁用主键约束:

    alter table table_name disable|enable constraint constraint_name;

    5)、删除主键约束:

    alter table table_name drop constraint constraint_name;

    alter table table_name drop primary key [CASCADE];

    3、外键约束

    1)、添加外键约束:

    create table table1 (column_name datatype references table2(column_name),...);

    [table2的column_name需为主键且主外键的数据类型必须相同,外键的值要么包含于主表主键的值,要么为null]

    create table table1 (column_name datatype,...,

    constraint constraint_name foreight key (column_name) references table2(column_name) [on delete CASCADE]);

    2)、修改表添加外键约束:

    alter table table1 add constraint contraint_name foreight key(column_name) references table2(column_name) [on delete CASCADE];

    3)、启用|禁用外键约束:

    alter table table_name disable|enable constraint constraint_name;

    4)、删除外键约束

    alter table table_name drop constraint constraint_name;

    4、唯一约束

    1)、添加唯一约束:

    create table table_name (column_name datatype UNIQUE,...);

    create table table_name (column_name datatype,...,

    constraint constraint_name UNIQUE(column_name));

    2)、修改表添加唯一约束:

    alter table table_name add constraint constraint_name UNIQUE(column_name);

    3)、启用|禁用唯一约束:

    alter table table_name disable|enable constraint constraint_name;

    4)、删除唯一约束

    alter table table_name drop constraint constraint_name;

    5、检查约束

    1)、添加检查约束:

    create table table_name (column_name datatype check(expressions),...);

    create table table_name (column_name datatype,...,

    constraint constraint_name check(expressions));

    2)、修改表添加检查约束:

    alter table table_name add constraint constraint_name check(expressions);

    3)、启用|禁用检查约束:

    alter table table_name disable|enable constraint constraint_name;

    4)删除检查约束:

    alter table table_name drop constraint constraint_name;

    六【数据查询】

    1、基本查询数据:

    select [distinct] column_name1,... from table_name [where conditions];

    2、在sqlplus中设置格式:

    col column_name heading new_name;

    col column_name format dataformat;

    col column_name clear;--格式清除

  • 相关阅读:
    循序渐进Python3(十一) --4--  web之jQuery
    循序渐进Python3(十一) --3--  web之dom
    循序渐进Python3(十一) --2-- web之javascript
    web之css伪类
    循序渐进Python3(十一) --1-- web之css
    循序渐进Python3(十一) --0-- web之html
    循序渐进Python3(十)-- 1 -- pymysql
    循序渐进Python3(十)-- 2 -- SqlAlchemy
    循序渐进Python3(十)-- 3 -- SqlAlchemy
    循序渐进Python3(十)-- 4 -- paramiko
  • 原文地址:https://www.cnblogs.com/zhengrunjian/p/4671172.html
Copyright © 2011-2022 走看看