oracle sql 的语句
delete 删除一张大表时空间不释放,非常慢是因为占用大量的系统资源,支持回退操作,空间还被这张表占用着。
truncate table 表名 (删除表中记录时释放表空间)
DML 语句:
表级共享锁: 对于操作一张表中的不同记录时,互不影响
行级排它锁:对于一行记录,oracle 会只允许只有一个用户对它在同一时间进行修改操作
wait() 等到行级锁被释放,才进行数据操作
drop一张表时也会对表加锁,DDL排它锁,所以在删除一张表时如果当前还有用户操作表时不能删除表
alter table 命令用于修改表的结构(这些命令不会经常用):
增加约束:
alter table 表名 add constraint 约束名 primary key (字段);
解除约束:(删除约束)
alter table 表名 drop primary key(对于主键约束可以直接用此方法,因为一张表中只有一个主键约束名, 注意如果主键此时还有其它表引用时删除主键时会出错)
alter tbale father drop primary key cascade ; (如果有子表引用主键时,要用此语法来删除主键,这时子表还存在只是子表中的外键约束被及联删除了)
alter table 表名 drop constraint 约束名;
(怎样取一个约束名:1、人为的违反约束规定根据错误信息获取!
2、查询示图获取约束名!)
alter table 表名 disable from primary key ; (相当于把一个表的主键禁用)
alter table 表名 enable primary key ;(enable 时会自动去检查表的记录是不是符合要求,如果有脏数据时必须要先删除脏数据才可以 enable)
*******************************************************************
增加字段:
alter table 表名 add(字段字 字段类型)
删除字段:
alter table 表名 drop(字段)
alter tbale 表名 drop column 字段 ; (8i 以后才支持)
给列改名:920才支持
alter table 表名 rename column 旧字段名 to 新字段名;
修改字段
(此时应注意的问题,更改时要看具体值情况之间的转达换, 改为字符类型时,必须要为空)
alter table 表名 modify( 字段,类型)
更改表中的字段:
update 表名 set 字段 = 值 where 条件
更改表名
rename 旧表名 to 新表名 ;
删除表:
trucate table 表名:(表结构还在,数据全部删除,释放表所占的空间,不支持回退,常用删除大表)
关于oralce中产生序列(sequence):
create sequence 序列名alter system flush shared_pool;
(不带参数时默认为从1 开始每次递增 1,o
相关文档:
在开发过程出现这么一个问题:
比如:一个字段content 类型CLOB,这其中存的有可能复制粘贴过来的word excel html中的内容,用java将这些内容存入,存入后有特殊的符号 比如回车换行等。那么不能正常展示的数据。
解决方案:
存入数据的是将这个数据contentdata在js中进行
......
一.说明
oracle 的exp/imp命令用于实现对数据库的导出/导入操作;
exp命令用于把数据从远程数据库服务器导出至本地,生成dmp文件;
imp命令用于把本地的数据库dmp文件从本地导入到远程的Oracle数据库中。
二.语法
可以通过在命令行输入 imp help=y 获取imp的语法信息:
========= ......
SQL日期时间不能早于1753年
1.公元元年的第一天,也就是公元1年1月1日,那天是星期六。
2.
现行的公历是格利戈里历法,这个历法并不是连续的,中间缺少了11天。1752年9月2日的后一天并不是9月3日,而是9月14日。也就是说,从1752年9月3日到9月13日的11天并不存在。
&nb ......
SQL Server CONVERT() 函数
定义和用法
CONVERT() 函数是把日期转换为新数据类型的通用函数。
CONVERT() 函数可以用不同的格式显示日期/时间数据。
语法
CONVERT(data_type(length),data_to_be_converted,style)
data_type(length) 规定目标数据类型(带有可选的长度)。data_to_be_converted 含有需要转换的值。styl ......