oracle 问题若干 提醒注意
1、Powerdesigner 里生成sql,在oracle中运行时报错:ORA-00907: 缺失右括号
解决:这样的问题很多时候是因为用了不正确的数据类型造成的。比如写作nvarchar(n),但是oracle中没有这样的数据类型,而应该是nvarchar2(n);写作 int(10)也同样会出错,因为int型不能设长度等等;
另外注意:由Powerdesigner 中设计的类图自动生成sql时,默认的表名都加上了双引号,如果不想要可以更改配置。
2、当关键字作为字段时,需要在加上双引号。例如desc为关键字,当它作为字段时需要加上双引号。
3、Oracle 在Drop表时的Cascade Constraints:
假设A为主表(既含有某一主键的表),B为从表(即引用了A的主键作为外键)。则当删除A表时,如不特殊说明,则 drop table A 系统会出现如下错误警告的信息而不会允许执行。
ERROR at line 1: ORA-02449: unique/primary keys in table referenced by foreign keys
此时必须用,drop table A cascade constraints;
利用Drop table cascade constraints可以刪除从表的constraint,从而可实现drop table A。原属于B的foreign key constraint已经跟随着被删除掉了,但是,储存在table B中的记录不会被删除,也就是说Drop table cascade constraints 时不会影响到存储于objec里的row data。
4、在Powerdesigner 里建好了物理模型后,怎么生成SQL Script File文件(或sql语句)?
解决:菜单中选择DateBase,再点Generate DataBase……
5、在ORACLE中如何查看表:
select * from tab/dba_tables/dba_objects/cat;
SELECT * FROM USER_TABLES 查看当前用户下的表
SELECT * FROM DBA_TABLES 查看数据库中所有的表
(1)在 SQL PLUS 里面, 显示表的结构:DESC 表名
(2)SQL语句是:
select COLUMN_NAME,DATA_TYPE from USER_TAB_COLS where TABLE_NAME='TEST';其中TEST是表名的例子
9、oracle如何删除表属性
1.想修改表tb1中的属性cod1 VARCHAR2(50),长度修改为100
(只能从小到大,100-->50就不可以了)。
ALTER table tb1 MODIFY(col1 VARCHAR2(100));
2。如需要修改属性col1的名称为col2。
ALTER TABLE tb1 MODIFY(col1 VARHCAR2(50), col2 VARCHAR2(100));
3.仅修改字段名:
ALTER TABLE liwh_620 RENAME COLUMN device_number TO serial_number;
4.删除一个字段
ALTER TABLE tb1 DROP COLUMN col1;
10、删除表中的所有数据
法一:delete from emp; 法二:truncate table emp;
如果一个表里的数据不要了,以后也不想恢复了,就可以用truncate table table_name的方式,这种方式不产生redo log,如果以后还要恢复就用delete的方式,由于产生redo log所以很慢。
11、oracle删除表中全部数据的问题
问题描述:
1、我在oracle SQL*PLUS中用了delete from 表名;可以正常删掉,重新查询结果为空(证明确实删掉了),然而我在java程序中用jdbc访问数据库,查到的却是删除之前的表中数据。这两种结果矛盾是怎么回事? 2、在1的基础之上,我重启了oracle SQL*PLUS,然后在其中查询1中删掉的表中内容,却可以查询的到删前表中的数据(但是明明在1中已经删掉了,并且我也没有做回滚的操作啊),怎么回事?
3、我又在oracle SQL*PLUS中用了truncate table 表名 删除表中数据是正常的。 解答:
1、oracle 如果使用同一个终端,比如sql*plus ,如果进行了 delete 操作,但是没有commit; 那么在同一个终端是可以看到delete 已经被操作的结果。 但是其他的终端却看不到这个执行结果。就像jdbc 仍然能够查询到数据。
2、你把 sql*plus 重启之后 就不是以前那个终端了。所以就又不能看到以前操作的结果了。所以就可以看到以前被删除的数据了。
3、truncate table 是物理操作,不需要commit。 所以你在哪里看到的都是一致的数据。但是他却不能回滚。
12、ORACLE中date类型的默认格式:
在英文版本的ORACLE中默认日期格式为'DD-MON-YY',例如'01-JAN-98'
在汉化的中文版本中ORACLE默认日期格式为'日-月-年',例如'21-8月-2003'或'21-8月-03'
13、oracle 查询某个表的所有外键:select constraint_name from user_constraints where table_name = 'DEPT'
R_CONSTRAINT_NAME in (select constraint_name from user_constraints where table_name = 'DEPT') ;
oracle 问题若干 提醒注意的更多相关文章
- Oracle字符集的查看查询和Oracle字符集的设置修改
本文主要讨论以下几个部分:如何查看查询oracle字符集. 修改设置字符集以及常见的oracle utf8字符集和oracle exp 字符集问题. 一.什么是Oracle字符集 Oracle字符集是 ...
- 如何修改Oracle字符集
一.什么是Oracle字符集 Oracle字符集是一个字节数据的解释的符号集合,有大小之分,有相互的包容关系.ORACLE 支持国家语言的体系结构允许你使用本地化语言来存储,处理,检索数据.它使数据库 ...
- Oracle 字符集的查看和修改
Oracle字符集是一个字节数据的解释的符号集合,有大小之分,有相互的包容关系.ORACLE 支持国家语言的体系结构允许你使用本地化语言来存储,处理,检索数据.它使数据库工具,错误消息,排序次序,日期 ...
- Oracle 字符集的查看和修改 -转
一.什么是Oracle字符集 Oracle字符集是一个字节数据的解释的符号集合,有大小之分,有相互的包容关系.ORACLE 支持国家语言的体系结构允许你使用本地化语言来存储,处理,检索数据.它使数据库 ...
- Oracle 字符集问题
1 简介 ORACLE数据库字符集,即Oracle全球化支持(Globalization Support),或即国家语言支持(NLS)其作用是用本国语言和格式来存储.处理和检索数据.利用全球化支持,O ...
- oracle字符集
oracle server端字符集
- oracle字符集查看修改
一.什么是Oracle字符集 Oracle字符集是一个字节数据的解释的符号集合,有大小之分,有相互的包容关系.ORACLE 支持国家语言的体系结构允许你使用本地化语言来存储,处理,检索数据.它使数据库 ...
- 转:Oracle弃用sun.reflect.Reflection.getCallerClass
http://www.infoq.com/cn/news/2013/07/Oracle-Removes-getCallerClass 作为Java开发者,我们经常忽略@Deprecated注释,继续使 ...
- [转]sqlldr 导入乱码,Oracle客户端字符集问题
1,查Oracle数据库创建时候的字符集:oracle服务器端执行 SQL> select name, value$ from sys.props$ where name like 'NLS%' ...
随机推荐
- 泛形集合List<T>
public class Person { /// <summary> /// 姓名 /// </summary> private string name; public st ...
- 微软职位内部推荐-Senior Network Engineer
微软近期Open的职位: Global Foundation Services is the team behind the cloud. GFS is responsible for deliver ...
- javascript高级编程笔记06(面相对象2)
1) 构造函数模式 es中的构造函数可以用来创建特定类型的对象,像Object和Array这样的原生构造函数,在运行时会自动出现在执行环境中,此外,也可以创建自定义的构造函数,从而定义自定义对象类型 ...
- MYSQL系列1_MySQL的安装,可视化工具的使用,以及建库建表等
大家都知道MYSQL是开源的数据库,现在MYSQL在企业中的使用也越来越多,本人之前用过SQL SERVER数据库,因业务需要和自己的兴趣想要学习MYSQL,对于MYSQL,本人还是新手,请大家多多指 ...
- 开源YYKit-b
转自 ibireme的博客,大家可以去他博客看看,有很多开发过程的一些调研和评测. YYModel 类似 Mantle/JSONModel 的工具,性能比 Mantle 高一个数量级,有更好的容错性, ...
- (转)关于ARM9协处理器CP15及MCR和MRC指令
网址:http://blog.csdn.net/zhou1232006/article/details/6150198 在基于ARM的嵌入式应用系统中,存储系统通常是通过系统控制协处理器CP15完成的 ...
- vs2010 使用SignalR 提高B2C商城用户体验(二)
vs2010 使用SignalR 提高B2C商城用户体验(二) 上一节,已经实现了,当前域内的通信,这一节中,介绍一下跨域的即时通信,既然要做,我们肯定要把这个推送及聊天服务器做为一个单独的服务器,以 ...
- 1874: [BeiJing2009 WinterCamp]取石子游戏 - BZOJ
Description小H和小Z正在玩一个取石子游戏. 取石子游戏的规则是这样的,每个人每次可以从一堆石子中取出若干个石子,每次取石子的个数有限制,谁不能取石子时就会输掉游戏. 小H先进行操作,他想问 ...
- 1057: [ZJOI2007]棋盘制作 - BZOJ
Description 国际象棋是世界上最古老的博弈游戏之一,和中国的围棋.象棋以及日本的将棋同享盛名.据说国际象棋起源于易经的思想,棋盘是一个8*8大小的黑白相间的方阵,对应八八六十四卦,黑白对应阴 ...
- Manifest 与TypeTag
Manifest和TypeTag是要解决什么问题? As with other JVM languages, Scala’s types are erased at compile time. T ...