场景
如标题所说,今天使用Navicat连接Oracle时页面一直弹not logged on,CSDN一番后定位到原来是Oracle密码过期the password has expired(默认180天)。继续CSDN解决办法,网上很多,这里给一个解决办法:
- 打开cmd命令窗口,输入sqlplus,提示输入用户名/密码
- 连接到Oracle后,输入语句查看密码有效期(默认180天)
SELECT * FROM dba_profiles s WHERE s.profile=‘DEFAULT’ AND resource_name=‘PASSWORD_LIFE_TIME’
- 接着输入将有效期设置为无限制
ALTER PROFILE DEFAULT LIMIT PASSWORD_LIFE_TIME UNLIMITED
- 执行完上面的语句账户会被锁,输入下面语句解锁原密码
alter user 用户名 identified by 密码 account unlock;
- OK
遇到的问题
在执行sql语句时报错
错误原因
ORA-00922一般是语句的语法有问题。比如命名不对,关键字写错等等。对于非标准的命名,一般采用双引号来创建。
解决办法
标识符命名规则:
1、必须以字母开始。
2、长度不能超过30个单字节字符。
3、只能包括A-Z,a-z,0-9,_,$和#。
4、不能在相同用户下建立两个同名的对象。
5、不能使用保留字和关键字
成功!