文章标签 ‘oracle’

转自:http://hi.baidu.com/bbz_dd_a/blog/item/1c962bf4b69666dff2d38588.html 公司的oracle狂慢,估计是配置没搞好吧,自己也不会只能凑合用了,google发现如下好文章,收藏之 Oracle 表删除大量数据后,即使表中只有几行记录,但用select count(*) from table 来查询发觉都不会马上出来,原因是该表的空间大了,查询起来很慢。解决的方法是把该表所占用的表空间缩小,或者说释放表空间。 alter table XXXX move; 这样处理后就释放了表空间了。但是释放表空间后,表的行号rowid会发生变化,而基于rowid的索引则会变成无效。因此该操作后必须重建索引。否则会 提示“ORA-01502: 索引’SMP.ITEMLOG_MID_IDX’或这类索引的分区处于不可用状态” 而重建索引的方法当然可以先drop掉再create ,但是这样太麻烦了,用alter index XXX rebuild 这样最快了,不会改变原来的索引结构。

2009年11月27日11:36 | 没有评论
标签: ,

Sql客户端中,虽然最便捷的是万能而且轻量无比的Sql Workbench,唯一的遗憾是只支持JDK5,不过这个小小的遗憾只要配置配置就能避免。 Otherwise,Oracle来说,用起来最爽的应该还是pl/sql Developer。只是开发机器上懒得装肥硕的Oracle,即使是客户端也是笨重无比。 所幸发现了一个Windows下免安装Oracle客户端就能使用pl/sql developer轻便的方法,分享: 1.从http://www.oracle.com/technology/software/tech/oci/instantclient/htdocs/winsoft.html中 Download Instant Client,注意2个basic包下一个即可,不推荐basiclife 2,在磁盘创建上目录,解压过去,最终解压文件会在同一个目录下。比如解压到c:\oracleclient 3,创建目录c:\oracleclient\network\admin 4,创建文件tnsnames.ora 内容如下 oracledata = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = yourhostIp )(PORT = 1521)) ) (CONNECT_DATA = (SERVICE_NAME = yourSID ) ) ) 5,设置pl/sql Developer的perference,主要填二个文本框 OCI Library:“c:\oracleclient\oci.dll”, Oracle_home: “c:\oracleclient\” 6,重启pl/sql developer, 输入用户名密码,以及tnsnames.ora设置的oracledata, Enjoy it.

2009年6月13日10:39 | 1 条评论

ALTER 语句修改数据表 1.修改数据表名 ALTER TABLE [方案名.]OLD_TABLE_NAME RENAME TO NEW_TABLE_NAME; 2.修改列名 ALTER TABLE [方案名.]TABLE_NAME RENAME COLUMN OLD_COLUMN_NAME TO NEW_COLUMN_NAME; 3.修改列的数据类型 ALTER TABLE [方案名.]TABLE_NAME MODIFY COLUMN_NAME NEW_DATATYPE; 4.插入列 ALTER TABLE [方案名.]TABLE_NAME ADD COLUMN_NAME DATATYPE; 5.删除列 ALTER TABLE [方案名.]TABLE_NAME DROP COLUMN COLUMN_NAME;

2009年6月2日14:46 | 没有评论
标签: ,