Oracle学习笔记

来源:互联网 发布:苏州爱知科技怎么样 编辑:程序博客网 时间:2024/06/05 07:33

Oracle使用命令及理解

1.     Oracle登录

使用sqlplus用户名/密码@数据库名 (assysdba)

有时候登录不了,则用最高级

Sqlplus / as sysdba

然后用selectusername from dba_users;查看是否存在该用户;

Alter user username identified by 密码;//修改该用户的密码;退出重新登录

或者有时候登录时,显示用户被锁定,则运行:

Alter user username account unlock;

http://blog.csdn.net/zhangyingjie09/article/details/40481229/

http://www.cnblogs.com/xwdreamer/archive/2011/07/05/2296991.html

2.     数据库操作语言SQL

DDL、DML、DCL、

注:SQL中关键字、表名和字段名大小写不敏感,但是密码敏感。

2.1DDL:

1.      创建表:

Create tablestudent(name varchar2(20),age number(3));

2.      删除表

Drop table tablename;

3.      插入数据

Insert into student values(‘Tom’,13);

4.      删除表中数据

Delete tablename;或者delete from tablename;

5.      查看表结构:

Desc tablename;或者describe tablename;

2.2DML查询

1.Select * from tablename;

Select ziduan from tablename;

2.可以使用表达式:

Select ziduan,ziduan*12 fromtablename;

3.||把字段和文本或其他表达式的连接形成新的字符串;

Select ‘姓名:’||name,’的年龄为:’age from student;

3.      as取别名

4.      distinct去除重复行

select distinct ziduan from tablename;

//作用范围:后面所以字段的组合

5.      orderbyziduan,ziduan1;排序desc 降asc升,

6.      where  //select * from student where age >12;

7.      select* from student where age >=20 and age <=39;

3.Oracle数据类型

1.      char//2000byte、varchar2、long、number(m,n)、Date//to_date(‘2004-10-16’,’yyyy-mm-dd’)、timestamp

4.oracle用户

SyS用户、system、Scott;

创建新用户:

Create user usernameidentified by passwd;

Sqlplus “sys/pw@db as sysdba”//以DBA身份登录

或者

Sqlplus /nolog

Connect sys/pw@db as sysdba;

create user spring identifiedby 123456 default tablespace users quota 40M on users;

//未被授予任何权限

Grant create session tospring;//使用户可以用于登录

//授权时除了用DBA用户还可以使用system

修改密码;

Alter User spring identifiedby 123;

Alter user spring accountlock;//锁定

Alter user spring accountunlock;//解锁

Alter user spring defaulttablespace example;//修改用户表空间

Alter user spring quata 60Mon users;

Alter user

Drop user username [cascade];

//当用户名下有数据库对象时,必须用cascade参数做级联删除;

存储用户信息的数据库字典视图为:

All_user:当前数据库所有用户的用户名、用户ID及创建时间信息;

Dba_users:包含当前数据库所有用户的详细信息,用户名、用户ID、密码验证方式、账户状态、锁定时间、密码过期时间、默认及临时表空间;

User_users:包含当前用户的详细信息;

Oracle中类似mysql中limit 2的查询实现:

权限管理包括:特定数据库的连接、创建表或视图等数据库对象,查询数据、插入/更新/删除数据等操作

用户在进行数据操作时先验证该用户是否有执行该操作的权限。分系统权限(system_privilege用户权限()

Tabs表中存储了数据库中的表信息;

Desc tabs查看tabs的字段情况;

Select table_name from tabs;//查看数据库中有哪些表;

一些操作实践:

5.查看数据空间表情况

查看某用户下的数据库空间中的表情况

从all_tables表中查找;先desc all_tables;

Select table_name from all_tables whereowner=’SYS’;

//注意区分大小写

6.Oracle导入.dmp

命令行:impuser/pw@test file=”” full=y

 

最后写在后面的实践的一些小内容:

1.登录

sqlplus sys/admin as sysdba

2.创建表空间

create tablespace space1 datafile'D:\oracle\test\envir.dbf' size 3072M autoExtend on;

//注意space1是新建的表空间的名字,目录D:下的oracle和test文件夹必须存在。

3.

http://www.cnblogs.com/psforever/p/3929064.html

4.windows中oracle数据库重启

命令行中如下输入关闭数据库

set ORACLE_SID=你的数据库SID名字

sqlplus /nolog

SQL> connect / as sysdba

SQL> shutdown immediate

SQL> exit

命令行中如下输入启动数据库

set ORACLE_SID=你的数据库SID名字

sqlplus /nolog

SQL> connect / as sysdba

SQL> startup

SQL> exit

5.Oracle远程连接要配置

https://wenku.baidu.com/view/029f6665783e0912a2162ab2.html

6.Oracle数据库全库导入,要保证数据库中为空;

7.Oracle查询表命令

select * from tabs;(查看自己创建的表或者视图)

https://zhidao.baidu.com/question/324875231.html

8.执行select语句时显示:未选定行

R:未选定行,是指符合你的查询条件的记录数为0出现这种状况,解决方法:1你需要检查一下你的表中是否存在你要查的记录2如果你确定表中存在你要查的记录,你就需要检查你的查询语句是否正确

 

8.    Q&A

1.       ORACLE 如何让拥有DBA权限的用户没有数据导入权限(如何用SYS用户撤销SYSTEM用户的数据导入权限)

 

CONNECT / AS SYSDBA
REVOKE IMP_FULL_DATABASE FROM DBA;

2.       oracle数据字典

https://zhidao.baidu.com/question/488107242.html

 

原创粉丝点击