Oracle学习

来源:互联网 发布:学做饭的软件 编辑:程序博客网 时间:2024/05/17 03:08

1、最近由于项目需要,又开始学习Oracle,本以为他和其他数据没什么区别,但一开始惨痛的经历告诉我,还是要认真对待他的。。

错误1:登陆https://localhost:1158/em 之后,看到数据库实例都是关闭的.启动不了.

办法:进入Net Configuration Assistant把当前的监听程序删除重新配置下就好了,然后在服务中把监听程序启动起来。

 

错误2:Oracle中的自增字段没有SQL Server或者Mysql中那么简单,需要设置序列和触发器什么的。但是又遇到ORA-04089: 无法对 SYS 所有的对象创建触发器

办法:system如果正常登录,它其实就是一个普通的dba用户,但是如果以as sysdba登录,其结果实际上它是作为sys用户登录的,这一点类似Linux里面的sudo的感觉,从登录信息里面我们可以看出来。因此在as sysdba连接数据库后,创建的对象实际上都是生成在sys中的。其他用户也是一样,如果 as sysdba登录,也是作为sys用户登录的。

自增字段设置方法:

create table UserInfo(       UserID int primary key not null,       UserName varchar(20) not null,       Power int not null);create sequence UserSequence //创建序列increment by 1 start with 1 nomaxvalue nocycle;create trigger UserSequence before insert on UserInfo for each row  //创建触发器beginselect UserSequence.nextval into:New.UserID from dual;end;insert into UserInfo(UserName,Power) values('123',1);//插入数据。




原创粉丝点击