黑马oracle_day01:02.oracle的基本操作

01.oracle体系结构

02.oracle的基本操作

03.oracle的查询

04.oracle对象

05.oracle编程

02.oracle的基本操作

PLSQL中文乱码问题解决
1.查看服务器端编码

select userenv('language') from dual;

我实际查到的结果为:AMERICAN_AMERICA.ZHS16GBK
2.执行语句 select * from V$NLS_PARAMETERS; 
查看第一行中PARAMETER项中为NLS_LANGUAGE 对应的VALUE项中是否和第一步得到的值一样。
如果不是,需要设置环境变量。
否则PLSQL客户端使用的编码和服务器端编码不一致,插入中文时就会出现乱码。
3.设置环境变量
计算机->属性->高级系统设置->环境变量->新建
 设置变量名:

NLS_LANG

 变量值:第1步查到的值, 我的是

AMERICAN_AMERICA.ZHS16GBK

4.重新启动PLSQL,插入数据正常。

04创建表空间创建用户以及用户授权

 

 

 

-- 创建表空间
create tablespace itheima
datafile 'c:\oracle\itheima.dbf'
size 100m
autoextend on
next 10m;

 

 

-- 删除表空间
drop tablespace itheima;
-- 创建用户
create user kangmianfeng
-- 设置用户密码
identified by root
-- 设置所属表空间
default tablespace itheima;
-- 给用户授权
-- oracle数据库中常用角色
connect --连接角色,基本角色
resource --开发者角色
dba --超级管理员
-- 给kangmianfeng授予dba角色
grant dba to kangmianfeng;

-- 切换到kangmianfeng用户下(Session-Logoff-all ---> Session-Logon-kangmianfeng)

-- 查看当前USER_TABLES所属的表空间
SELECT TABLE_NAME,TABLESPACE_NAME FROM USER_TABLES

 

 

05数据类型介绍和表的创建

 

-- 创建一个person表
create table person(
    pid number(20),
    pname varchar2(10)

);

 

06修改表结构

-- 修改表结构
-- 添加一列
alter table person add (gender number(1));

 

-- 修改列类型
alter table person modify (gender char(1));-- char长度固定
-- 修改列名称
alter table person rename column gender to sex;
-- 删除一列
alter table person drop column sex;

 

07数据的增删改

-- 查询表中记录
select * from person;
-- 添加一条记录
insert into person (pid, pname) values (110111,'小明');
commit;-- 手动提交事务
-- 修改一条记录
update person set pname='小马' where pid = 110111;
commit;

----三个删除
-- 删除表中全部记录
delete from person;
-- 删除表结构
drop table person;
-- 在数据量大的情况下,尤其在表中带有索引的情况下
-- 该操作效率高
-- 索引可以提高查询效率,但是会影响增删改效率
truncate table person;

 


 

08序列的使用

----- oracle的序列不真的属于任何一张表,但是逻辑上可以和表做绑定。

----- 序列默认从1开始,以此递增,主要用来给主键赋值使用。

----- dual:虚表,只是为了补全oracle的语法,没有任何意义。

-- 创建一个序列
create sequence s_person;
select s_person.nextval from dual;
select s_person.currval from dual;
-- 添加/插入一条记录
insert into person (pid, pname) values (s_person.nextval,'小明');
commit;-- 提交事务
-- 查询表中记录
select * from person;

 

      create sequence 序列名;
---- [INCREMENT BY n] 每次增加n(默认增加1)
---- [START WITH n] 从n开始
---- [{CACHE n|NOCACHE}]; 缓存

 

=========================================

参考资料:   

ORACLE的CONNECT和RESOURCE角色权限

=========================================

end

转载于:https://www.cnblogs.com/MarlonKang/p/11531336.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值