今天在往一个压缩表增加一个字段可以增加成功,但在删除的时候报了个ORA-39726 unsupported add/drop column operation on compressed tables的错误.错误是不能对压缩表增加或删除字段,奇怪的可以增加,但是不能删除.即使将表MOVE为非压缩表也还是不可以删除. 最后终于找到了一种方法那就是先将该字段设置为UNUSED,然后在删除UNUSED字段即可. 例如:ALTER TABLE test SET UNUSED COLUMN ROUTERA…
查询整个数据库中某个特定值所在的表和字段的方法 当数据库做的太庞大的时候,难免会出现忘记哪个值会存入哪个表的情况,于是在网上找到的如下解决办法. 通过做一个存储过程,只需要传入一个想要查找的值,即可查询出这个值所在的表和字段名.前提是要将这个存储过程放在所查询的数据库. CREATE PROCEDURE [dbo].[SP_FindValueInDB] ( ) ) AS BEGIN -- SET NOCOUNT ON added to prevent extra result sets from…
<.Net程序员学用Oracle系列:导航目录> 本文大纲 1.表 1.1.创建表 1.2.修改表 & 删除表 2.字段 2.1.添加字段 2.2.修改字段 & 删除字段 3.注释 3.1.表注释 3.2.字段注释 4.约束 4.1.添加主键约束 4.2.添加外键约束 4.3.添加唯一约束 4.4.添加 CHECK 约束 4.5.非空约束 4.6.禁用约束 & 启用约束 & 删除约束 5.索引 5.1.创建索引 5.2.修改索引 & 删除索引 6.总结…
单行注释:-- 多行注释:/* */ Oracle中修改表结构 增加字段     ALTER TABLE table_name ADD column_name data_type; 删除字段     ALTET TABLE table_name DROP COLUMN column_name;修改字段类型     ALTER TABLE table_name ALTER COLUMN column_name new_data_type; 设置主键     ALTER TABLE table_na…
这几天有业务部门需要使用一个SAP B1老系统  中的报表,但是由于此报表没有加时间条件,导致一旦开始查询 就会导致B1系统异常退出.由于报表对应的SQL 是存在数据库中,所以想通过查找到这个报表的SQL,然后给SQL加时间条件的方式来处理(多年前的一个报表,不知道内部逻辑,很难重写). 但是苦于不清楚报表相关的表结构,不知道报表的存储位置,但只知道报表的名称 又陷入了不知道下一步该怎么处理的窘境.于是又开始大胆猜想,是不是有什么方法 可以根据数据的关键词 查询数据所在的表名呢?于是开始百度各种…
1-remove()方法 根据值删除元素.  remove()方法传入一个列表中的值,它将从被调用的列表中删除. 如果该值在列表中出现多次,只有第一次出现的值会被删除. 如果要删除的值可能在列表中出现多次,就需要使用循环来判断是否删除了所有这样的值 试图删除列表中不存在的值,将导致 ValueError 错误. 2-del语句 del 语句将根据元素索引删除列表中的值,表中被删除值后面的所有值,都将向前移动一个下标. del 的常见错误   如果不确定该使用del 语句还是pop() 方法, 下…
今天在做项目的过程中,发现开发库中某张表的某字段有许多值是空的,而测试库中该字段的值则是有的. 那么,有什么办法能将测试库中该字段的值更新到开发库中呢? SQL Server中这是比较容易解决的,而Oracle中就不知道方法了. SQL Server中类似问题的解决方法 后来只好用最笨的方法: 首先,将数据复制到Excel:(假设称测试库的表为A--含有数据) 然后,在开发库中建立和表A同结构的表B:(这里为了导入数据的简单,我对表B的结构进行了改造,只有两个字段) 图 表B的数据 再利用PL…
获取表:select table_name from user_tables; //当前用户拥有的表 select table_name from all_tables; //所有用户的表 select table_name from dba_tables; //包括系统表 select table_name from dba_tables where owner='用户名' user_tables: table_name,tablespace_name,last_analyzed等 dba_t…
Oracle 将表t_uaer的字段ID设置为自增:(用序列sequence的方法来实现) ----创建表 Create table t_user( Id ),userid ),loginpassword ),isdisable ) ); ----创建序列 increment --用于指定序列增量(默认值:1),如果指定的是正整数,则序列号自动递增,如果指定的是负数,则自动递减. start --用于指定序列生成器生成的第一个序列号,当序列号顺序递增时默认值为序列号的最小值 当序列号顺序递减时默…
大家都可能遇到字段重复的情况,网上很多人在找方法,也给出了一些方法,但是有的方法是误导大家,铁牛写出以下方法,方便大家使用 1.通过group by把重复的字段筛选出来,并建立临时表tmp 1 create table tmp as select max(id) as col1 from www group by dfdfd; 2.从去重表对象里通过not in的条件来筛选出不在临时表的列col1,执行not in的删除操作 1 delete from www where id not in (…