今天同事遇到一个很奇怪的问题,恢复了一个数据库,表明明存在,用PLSQL和sqlplus都试过了,SQL语句select * from 表名,查询数据,却提示表名不存在异常 然而,使用select * from 用户名.表名的方式,却可以查询出数据 网上有说是没有权限,但实际上已经有权限了 时间来不及,先想了个大招,使用create table 表名 as select * from 用户名.表名的方式新建了一个表,居然还创建表成功了,暂时解决燃眉之急,至于实际原因,还未找到~
select NAME FROM USER$ ORDER BY NAME ; CREATE USER pciss IDENTIFIED BY pciss ; GRANT DBA TO pciss ; SELECT * FROM dba_directories ; SELECT * FROM USER$ U WHERE U.NAME=UPPER('pciss') ; SELECT * FROM Dba_Tablespaces ; SELECT * FROM Dba_Data_Files ; CRE
SQLSTATE[HY000]: General error: 1364 Field 'college' doesn't have a default value 数据库严格模式开启了,解决方法: 解决方法一:(足够用了) 在数据库中对报错的字段设置默认值, 整数:0 ,字符串:设为NULL, 找到对应的表--->设计表--->默认选择框(设置默认值) 解决方法二: MYSQL安装目录--->搜索打开my.ini,查找 sql-mode="STRICT_TRAN
grant create view to hospital; --授予查询权限 grant select any table to hospital; --授予权限 grant select any dictionary to hospital; grant SELECT ON Yfgl_YPRuKuDan to hospital; grant SELECT ON Yfgl_YPRukudanmx to hospital; ORA-01031:权限不足的问题 在 脚本更新时,报错:ORA-010
原因是使用的用户没有相关的查询权限导致 解决办法: grant select any dictionary to 用户; --这个权限比较大 这个权限是最低的要求,但是可以访问到v$相关视图 grant select_catalog_role to 用户; 收回权限 revoke select_catalog_role from user;
今天微博大数据平台发邮件来说.他们有一个hql执行失败.可是从gateway上面的日志看不出来是什么原因导致的,我帮忙看了一下.最后找到了问题的解决办法,下面是分析过程: 1.执行失败的hql: INSERT OVERWRITE TABLE brand_ad_user_with_interact_score_3 select a.uid, a.brand, a.friend, CASE b.weight WHEN NULL THEN '0.000000' ELSE b.weight END fr
A: create table a1 like a; insert into a1 as select * from a; B: create table b1 as select * from b; 测试AB两种建表语句对原始表的影响.其中a.b的数据量均为300000 rows. 如果使用A种方式建表,insert过程可能会堵塞DML操作 如果使用B中方式建表,此建表过程全程锁表: 建议:生产环境使用A种方式建备份表: