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 table_name from user_tables;  //当前用户的表 
select table_name from all_tables;  //所有用户的表 
select table_name from dba_tables;  //包括系统表 
select * from user_indexes //可以查询出所有的用户表索引
SELECT * FROM USER_TABLES 查看当前用户下的表
SELECT * FROM DBA_TABLES 查看数据库中所有的表
 6、安装了oracle后,oracle的安装路径里有jdbc的jar包,可以直接拿来使用(java连接数据库)
7、java连接oracle数据库时报错:java.sql.SQLException: Listener refused the connection with the following error: ORA-12505, TNS:list……
解决:我在网上查的解决方案是这样子的http://qingfengjushi1.iteye.com/blog/698519,但是对比之后觉得仍有出入,不知怎么修改,因为没用这个方法。后来想到我的oracle服务没有开启,开启这个服务后再次运行就不再报这个错误了。(所以记得一定要先开启服务才能正常连接数据库)
 8、oracle中如何查看某个表的表结构

(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'

       查看所有reference于当前表的外键:select * from user_constraints where 
       R_CONSTRAINT_NAME in (select constraint_name from user_constraints where table_name = 'DEPT') ;
14、sql plus登录时,输入用户名和口令后就消失不见,不能正常启动。
       解决方案 :database instance没有起起来。windows平台如下操作:开始---程序---管理工具---服务,打开服务面板,启动oracleserviceXXXX,XXXX就是你的database SID.
       如果服务已经打开还是出现这样的问题,则可能是win7的安全机制导致的,需要以管理员身份运行。右键sqlplus-->以管理员身份运行。
15、登录sqlplus时报错:ERROR:ORA-12560:TNS:协议适配器错误
   解决方案:服务没有起来。解决方法同14。
16、oracle中文乱码问题:在windows server上安装oracle10g,插入数据时,中文乱码,老是显示“?”。查阅好多资料,终于解决了。我的数据库服务器的字符集设的是utf-8,而客户端的字符集为空,才引起这样的问题。随后,我将客户端的字符集设为SIMPLIFIED CHINESE_CHINA.ZHS16GBK,就解决了问题。有以下几点的个人总结:
(1)怎么查看数据库服务器端字符集: select   *   from   V$NLS_PARAMETERS ;
(2)怎么查看客户端字符集:运  行REGEDIT-->HKEY_LOCAL_MACHINE-->SOFTWARE-->ORACLE-->NLS_LANG。
(3)NLS_LANG 未设置或设置错误,都会导致插入中文乱码问题,排除这方面的问题一定要晓得字符集的排除过程。
(4)客户端的字符集需改为和服务器端字符集一致,或者服务器端字符集是客户端字符集的超集才行。即在(2)中NLS_LANG中键入与服务器端相同的字符集或比它小的字符集。
 

oracle 问题若干 提醒注意的更多相关文章

  1. Oracle字符集的查看查询和Oracle字符集的设置修改

    本文主要讨论以下几个部分:如何查看查询oracle字符集. 修改设置字符集以及常见的oracle utf8字符集和oracle exp 字符集问题. 一.什么是Oracle字符集 Oracle字符集是 ...

  2. 如何修改Oracle字符集

    一.什么是Oracle字符集 Oracle字符集是一个字节数据的解释的符号集合,有大小之分,有相互的包容关系.ORACLE 支持国家语言的体系结构允许你使用本地化语言来存储,处理,检索数据.它使数据库 ...

  3. Oracle 字符集的查看和修改

    Oracle字符集是一个字节数据的解释的符号集合,有大小之分,有相互的包容关系.ORACLE 支持国家语言的体系结构允许你使用本地化语言来存储,处理,检索数据.它使数据库工具,错误消息,排序次序,日期 ...

  4. Oracle 字符集的查看和修改 -转

    一.什么是Oracle字符集 Oracle字符集是一个字节数据的解释的符号集合,有大小之分,有相互的包容关系.ORACLE 支持国家语言的体系结构允许你使用本地化语言来存储,处理,检索数据.它使数据库 ...

  5. Oracle 字符集问题

    1 简介 ORACLE数据库字符集,即Oracle全球化支持(Globalization Support),或即国家语言支持(NLS)其作用是用本国语言和格式来存储.处理和检索数据.利用全球化支持,O ...

  6. oracle字符集

    oracle server端字符集

  7. oracle字符集查看修改

    一.什么是Oracle字符集 Oracle字符集是一个字节数据的解释的符号集合,有大小之分,有相互的包容关系.ORACLE 支持国家语言的体系结构允许你使用本地化语言来存储,处理,检索数据.它使数据库 ...

  8. 转:Oracle弃用sun.reflect.Reflection.getCallerClass

    http://www.infoq.com/cn/news/2013/07/Oracle-Removes-getCallerClass 作为Java开发者,我们经常忽略@Deprecated注释,继续使 ...

  9. [转]sqlldr 导入乱码,Oracle客户端字符集问题

    1,查Oracle数据库创建时候的字符集:oracle服务器端执行 SQL> select name, value$ from sys.props$ where name like 'NLS%' ...

随机推荐

  1. 遍历并修改dictionary的值

    var dictionary = clb_Select.Items.Cast<object>().ToDictionary(item => item.ToString(), item ...

  2. NSFileHandle 和 NSFileManager的一些用法

    文件操作 NSFileManager 常见的NSFileManager文件的方法: -(BOOL)contentsAtPath:path 从文件中读取数据 -(BOOL)createFileAtPat ...

  3. 1199: [HNOI2005]汤姆的游戏 - BZOJ

    Description 汤姆是个好动的孩子,今天他突然对圆规和直尺来了兴趣.于是他开始在一张很大很大的白纸上画很多很多的矩形和圆.画着画着,一不小心将他的爆米花弄撒了,于是白纸上就多了好多好多的爆米花 ...

  4. 通过PLSQL Developer导入SQL文件

    1.点击“工具” 2.选中其中的“导入表(L)”,在按下图所示操作: PLSQL Developer会自动运行相关命令,在Tables中刷新即可看到新导入的表.

  5. ubuntu的vi

    ubuntu12.04的vi 1. 安装vim full版本由于Ubuntu预安装的是tiny版本,就会导致我们在使用上的产生不便.所以我们要安装vim的full版本.首先,先卸掉旧版的vi,输入以下 ...

  6. textarea中限制输入字符长度

    要在textarea中限制输入字符的长度,比如在twitter中要限制字符为140个,可实现的方法有: 1. <textarea name="A" cols="45 ...

  7. 网络爬虫-url索引

    网络爬虫-url索引 http://www.cnblogs.com/yuandong/archive/2008/08/28/Web_Spider_Url_Index.html url索引的作用是判断一 ...

  8. Android 国际化文字

    本例演示中英文切换 在resource文件夹添加values-zh,这个文件夹对应中文环境的values文件夹,然后添加strings.xml: <?xml version="1.0& ...

  9. Java 垃圾回收机制

    1.delete是C++里面用于释放内存的运算符,而不是Java. 2.当发现某个对象的引用计数为0时,就将对象列入待回收列表中,并不是马上予以销毁. 3.System.gc()仅仅是一个回收请求,J ...

  10. jquery的ajax向后台servlet传递json类型的多维数组

    后台运行结果:                                                                                      前台运行结果: ...