1、连接

SQL*Plus system/manager

2、显示当前连接用户

SQL> show user

3、查看系统拥有哪些用户

SQL> select * from all_users;

4、新建用户并授权

SQL> create user a identified by a;(默认建在SYSTEM表空间下)

SQL> grant connect,resource to a;

5、连接到新用户

SQL> conn a/a

6、查询当前用户下全部对象

SQL> select * from tab;

7、建立第一个表

SQL> create table a(a number);

8、查询表结构

SQL> desc a

9、插入新记录

SQL> insert into a values(1);

10、查询记录

SQL> select * from a;

11、更改记录

SQL> update a set a=2;

12、删除记录

SQL> delete from a;

13、回滚

SQL> roll;

SQL> rollback;

14、提交

SQL> commit;

用户授权:

GRANT ALTER ANY INDEX TO "user_id "

GRANT "dba " TO "user_id ";

ALTER USER "user_id " DEFAULT ROLE ALL

创建用户:

CREATE USER "user_id " PROFILE "DEFAULT " IDENTIFIED BY " DEFAULT TABLESPACE "USERS " TEMPORARY TABLESPACE "TEMP " ACCOUNT UNLOCK;

GRANT "CONNECT " TO "user_id ";

用户password设定:

ALTER USER "CMSDB " IDENTIFIED BY "pass_word "

 

表空间创建:

CREATE TABLESPACE "table_space " LOGGING DATAFILE 'C:\ORACLE\ORADATA\dbs\table_space.ora' SIZE 5M

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

1、查看当前全部对象

SQL > select * from tab;

2、建一个和a表结构一样的空表

SQL > create table b as select * from a where 1=2;

SQL > create table b(b1,b2,b3) as select a1,a2,a3 from a where 1=2;

3、察看数据库的大小。和空间使用情况

SQL > col tablespace format a20

SQL > select b.file_id  文件ID,

  b.tablespace_name  表空间,

  b.file_name     物理文件名称,

  b.bytes       总字节数,

  (b.bytes-sum(nvl(a.bytes,0)))   已使用,

  sum(nvl(a.bytes,0))        剩余,

  sum(nvl(a.bytes,0))/(b.bytes)*100 剩余百分比

  from dba_free_space a,dba_data_files b

  where a.file_id=b.file_id

  group by b.tablespace_name,b.file_name,b.file_id,b.bytes

  order by b.tablespace_name

  /

  dba_free_space --表空间剩余空间状况

  dba_data_files --数据文件空间占用情况

4、查看现有回滚段及其状态

SQL > col segment format a30

SQL > SELECT SEGMENT_NAME,OWNER,TABLESPACE_NAME,SEGMENT_ID,FILE_ID,STATUS FROM DBA_ROLLBACK_SEGS;

5、查看数据文件放置的路径

SQL > col file_name format a50

SQL > select tablespace_name,file_id,bytes/1024/1024,file_name from dba_data_files order by file_id;

6、显示当前连接用户

SQL > show user

7、把SQL*Plus当计算器

SQL > select 100*20 from dual;

8、连接字符串

SQL > select 列1 | |列2
from 表1;

SQL > select concat(列1,列2)
from 表1;

9、查询当前日期

SQL > select to_char(sysdate,'yyyy-mm-dd,hh24:mi:ss') from dual;

10、用户间复制数据

SQL > copy from user1 to user2 create table2 using select * from table1;

11、视图中不能使用order by,但可用group
by取代来达到排序目的

SQL > create view a as select b1,b2 from b group by b1,b2;

12、通过授权的方式来创建用户

SQL > grant connect,resource to test identified by test;

SQL > conn test/test

13、查出当前用户全部表名。

select unique tname from col;

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

alter table alist_table add address varchar2(100);

alter table alist_table modify address varchar2(80);

create table alist_table_copy as select ID,NAME,PHONE,EMAIL,

QQ as QQ2,

ADDRESS from alist_table;

drop table alist_table;

rename alist_table_copy to alist_table

空值处理

有时要求列值不能为空

create table dept (deptno number(2) not null, dname char(14), loc char(13));

在基表中添加一列

alter table dept

add (headcnt number(3));

改动已有列属性

alter table dept

modify dname char(20);

注:仅仅有当某列全部值都为空时。才干减小其列值宽度。

仅仅有当某列全部值都为空时,才干改变其列值类型。

仅仅有当某列全部值都为不空时,才干定义该列为not null。

例:

alter table dept modify (loc char(12));

alter table dept modify loc char(12);

alter table dept modify (dname char(13),loc char(12));

查找未断连接

select process,osuser,username,machine,logon_time ,sql_text

from v$session a,v$sqltext b where a.sql_address=b.address;

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

1.以USER_開始的数据字典视图包括当前用户所拥有的信息, 查询当前用户所拥有的表信息:

select * from user_tables;

2.以ALL_開始的数据字典视图包括ORACLE用户所拥有的信息,

查询用户拥有或有权訪问的全部表信息:

select * from all_tables;

3.以DBA_開始的视图一般仅仅有ORACLE数据库管理员能够訪问:

select * from dba_tables;

4.查询ORACLE用户:

conn sys/change_on_install

select * from dba_users;

conn system/manager;

select * from all_users;

5.创建数据库用户:

CREATE USER user_name IDENTIFIED BY password;

GRANT CONNECT TO user_name;

GRANT RESOURCE TO user_name;

授权的格式: grant (权限)
on tablename to username;

删除用户(或表):

drop user(table) username(tablename) (cascade);

6.向建好的用户导入数据表

IMP SYSTEM/MANAGER FROMUSER = FUSER_NAME TOUSER = USER_NAME FILE = C:\EXPDAT.DMP COMMIT = Y

7.索引

create index [index_name] on [table_name]( "column_name ")

orcal数据库基本操作的更多相关文章

  1. ecmall数据库基本操作

    ecmall数据库基本操作,为了认真研究ecmall二次开发,我们必须熟悉ecamll的数据库结构,ecmall数据库结构研究熟悉之后,才能去认真分析ecamll的程序结构.从而实现ecmall二次开 ...

  2. Oracle 数据库基本操作——实用手册、表操作、事务操作、序列

    目录: 0. 参考链接与参考手册1. oracle 实用(常用操作)指令2. 数据库基本操作语法 a) 表操作 1)创建表 2)更新表 3)删除表 4)查询 b) 事务操作 c) 序列操作 1)创建序 ...

  3. MySQL系列:数据库基本操作(1)

    1. 登录数据库 mysql -h localhost -u root -p 2. 数据库基本操作 2.1 查看数据库 mysql> SHOW DATABASES; +------------- ...

  4. Orcal数据库12c安装完成后注意事项

    1.按照12c的安装使用装完数据库后,使用navicat链接orcal数据库时无法使用. 点击此处查看安装方案 2. 2048错误,ORA-28040: No matching authenticat ...

  5. MySQL 5.6学习笔记(数据库基本操作,查看和修改表的存储引擎)

    1. 数据库基本操作 1.1  查看数据库 查看数据库列表: mysql> show databases; +--------------------+ | Database | +------ ...

  6. Oracle数据库基本操作(一) —— Oracle数据库体系结构介绍、DDL、DCL、DML

    一.Oracle数据库介绍 1.基本介绍 Oracle数据库系统是美国ORACLE公司(甲骨文)提供的以分布式数据库为核心的一组软件产品,是目前最流行的客户/服务器(CLIENT/SERVER)或B/ ...

  7. (三)mysql数据库基本操作

    (1)SQL语句:结构化查询语句 DDL语句 数据定义语言:数据库丶表丶视图丶索引丶存储过程丶函数丶create drop alter DML语句 数据库操作语言:插入数据insert,删除数据del ...

  8. orcal数据库得连接必须用localhost,url中不要用127.0.0.1,不然无法连接

    orcal数据库得连接必须用localhost,url中不要用127.0.0.1,不然无法连接,

  9. laravel基础课程---13、数据库基本操作2(lavarel数据库操作和tp对比)

    laravel基础课程---13.数据库基本操作2(lavarel数据库操作和tp对比) 一.总结 一句话总结: 非常非常接近:也是分为两大类,原生SQL 和 数据库链式操作 学习方法:使用时 多看手 ...

随机推荐

  1. 菜鸟nginx源代码剖析数据结构篇(八) 缓冲区链表ngx_chain_t

    菜鸟nginx源代码剖析数据结构篇(八) 缓冲区链表 ngx_chain_t Author:Echo Chen(陈斌) Email:chenb19870707@gmail.com Blog:Blog. ...

  2. Android开发中遇到的问题(四)——Android中WARNING: Application does not specify an API level requirement!的解决方法

    今天在手机上调试运行Andorid项目时,发现Console打印出"WARNING: Application does not specify an API level requiremen ...

  3. AngularJS中自定义有关一个表格的Directive

    本篇体验在AngularJS中自定义一个有关表格的Directive.表格的需求包括: ● 表格结构 <table>    <thead>        <tr>  ...

  4. 使用Let’s Encrypt生成免费的SSL证书

    SSL(安全套接层,Secure Sockets Layer),及其继任者 TLS (传输层安全,Transport Layer Security)是为网络通信提供安全及数据完整性的一种安全协议.TL ...

  5. 深入理解JVM(一)——JVM内存模型

    JVM内存模型 Java虚拟机(Java Virtual Machine=JVM)的内存空间分为五个部分,分别是: 1. 程序计数器 2. Java虚拟机栈 3. 本地方法栈 4. 堆 5. 方法区. ...

  6. Ubuntu下搭建tftp服务器最简单方法

    今天开始调试ARM的板子,要通过tftp下载到板子上,所以又要配置tftp服务器,真的烦死了… (本人酷爱装系统,所以经常都要搞配置) 因为之前已经在Ubuntu下搭建过很多次tftp服务器了,但是一 ...

  7. LeetCode Permutations问题详解

    题目一 permutations 题目描述 Given a collection of numbers, return all possible permutations. For example,[ ...

  8. PHP 通过带SSL的SMTP 发送邮件的处理

    客户端与SMTP服务器的通讯, 是通过固定的命令以及返回编号完成的. 发送Email, 需要经过的步骤有创建socket (区分带ssl, 还是不带ssl)执行命令, 并检查返回值是否与预期一致, 不 ...

  9. 学习一个Vue模板项目

    最开始学习Vue的时候,不建议直接使用模板,而应该自己从头写起.模板都是人写的,要坚信"人能我能".只有自己亲自实践,才能促进自己主动思考,才能对模板.框架有深刻的理解. 在Git ...

  10. 如何寻找linux下相关软件

    当在linux下运行程序遇到找不到库的时候可以使用yum whatprovides 来找到到需要安装的包. 例如:yum whatprovides libz.so.1  然后安装找到的包 yum in ...