oracle学习(二)——表管理

表的规范:
 
Oracle支持的数据类型:
 
Char型的搜索数据非常快,比varchar速度快,所以,当有数据固定长度,而且频繁被查询,比如主键等,需要使用char型。

 

即正负10的38次方的范围。


 


一般来讲,图片的存储是存放图片的路径,将对应的文件存放在另外的服务器中,如果出于安全性考虑,可以将文件直接存在数据库中。
建表:
 
修改表:
 
向表中添加数据:
 
alter session是在会话级别对某些参数进行更改,
在v$parameter视图中的ISSES_MODIFIABLE字段为true的表示这个参数可以使用alter session修改;
alter system是在系统级别对某些参数进行更改,它的影响不仅仅是某个会话,而是整个实例。
在v$parameter视图中的ISSYS_MODIFIABLE字段为immediate和deferred的表示这个参数可以使用alter system命令修改。
alter system命令在中,如果你的scope指定如下的指,它们分别代表不同的含义:
scope=spfile表示会在spfile中修改这个参数,在正在运行的实例的内存中不进行修改,那么只有数据库的实例重启以后,对这个参数的修改才会起作用;
scope=memory表示在当前实例的内存中修改这个参数,而不在spfile中修改,那么这个参数的修改会影响到当前实例的运行,而如果数据库重新启动以后,你这次对这个参数的修改是没有起作用的。
scope=both,这个想象一下就知道了。
在v$parameter视图中的issys_modifiable的3个值来解释一下:
如果是immediate:表示这次对这个参数的修改会在你当前会话中就“立即”发生作用,即修改立即生效。
如果是deferred:表示这次修改对当前执行会话中不发生作用,在以后打开的会话中起作用,故它有“推迟”影响的效果。
如果是false:表示不能使用alter system命令修改。
alter session set time_zone=' CST';//设置时区
alter session  set nls_date_from='mm/dd/yyyy hh24:mi:ss';
altet session disable(enable) commit in procedure;关闭或启动PLSQL程序发出的commit或者rollback语句功能。
添加数据:
 
对空值的查询:
Select * from student where birthday is null;
Null与“”是有区别的。
 
删除数据:
 
Truncate速度快,但是删完之后,数据不写日志,如果使用truncate,保存点不生效,主要是trancate不写日志。
保存点:
Savepoint a;
    Select
    Insert
    ……
Rollback to a;

执行完rollback后,数据就会回到a的savepoint位置。

如图:

 

猜你喜欢

转载自blog.csdn.net/livan1234/article/details/80784764