我是一名程序员,使用Java语言进行管理软件开发工作。有一次开发项目中使用JavaScript来丰富用户体验效果,特地认真的学习了一下,从此对JavaScript产生了浓厚的兴趣。有机会参加了由电子工业出版社飞思公司举办的《JavaScript征途》读后感有奖召集活动,获得赠书学习。由于本人文学水平有限,此读后感的用词不当之处还望多多见谅。
世面上关于JavaScript的书有很多我也买过几本,但大多翻看过入门章节后深奥的知识点就不那么容易理解了,于是草草收军也只能将书藏于书架之上等到用到的时候再翻开研究了。在刚收到此书的时候见封面上有这么一段话:这是一本帮助您寻找JavaScript路标的书,这是一本探索JavaScript征途起点和终点的秘笈,在趣味阅读中体验理性思维的快乐,并渐行渐远。几句给人感觉很舒心,尤其是“在趣味阅读中体验理性思维的快乐”,这往往能事半功倍。翻开目录本书共分为6篇21章由潜入深的讲述js语言,每篇的名字起的也非常有意思:壮志从戎、沙场秋点兵、出战告捷、直捣黄龙、飞鸿传书、壮志凯旋,还真有种握着JavaScript这把宝器驰骋疆场的感觉,真是与“在趣味阅读中体验理性思维的快乐,并渐行渐远”这句话相呼应。
......
<body>
<form id="form1" runat="server">
请选择你的爱好:
<div>
<input name="Che" type="checkbox" />足球
<input name="Che" type="checkbox" />篮球
<input name="Che" type="checkbox" />上网
<input name="Che" type="checkbox" />游戏
<input name="Che" type="checkbox" />逛街
<input name="Che" type="checkbox" />购物
<input name="Che" type="checkbox" />排球
  ......
drop table test;
select count(*) from test;
--创建测试表
create table test
(
id number(9),
nick varchar2(30)
);
--插入测试数据
begin
for i in 1..100000 loop
insert into test(id) values(i);
end loop;
commit;
end;
select * from test;
--更新nick字段,使数据发生严重倾斜
update test set nick='abc' where rownum<99999;
--创建索引
create index idx_test_nick on test(nick);
update test set nick='def' where nick is null;
--只对索引进行分析
analyze index idx_test_nick compute statistics;
select * from user_indexes;
--查看索引名,对应存储的数据块,不同的key数量,记录数(行数)的分析信息
select index_name, LEAF_BLOCKS, DISTINCT_KEYS, NUM_ROWS
from user_indexes
where index_name = 'IDX_TEST_NICK';
--dba_tab_col_statistics
--查看表的统计信息
select COLUMN_NAME, NUM_BUCKETS, num_distinct
from USER_tab_columns
where table_name = 'TEST';
select * from test where nick ='abc';
Executi ......
因为做项目,需要使用BFILE字段存储图像文件,所以进行了一些研究。
bfile字段实际的文件存储在文件系统中,字段中存储的是文件定位指针.bfile对
oracle来说是只读的,也不参与事务性控制和数据恢复
bfile的基本操作如下:
1.先在oracle数据库中下面我们建立一个目录别名,用于将文件定位指针映射到文件系统:
create DIRECTORY 'tmpdir' AS '/tmp';
tmpdir表示逻辑目录名,'/tmp'是实际目录。 注意该目录oracle应该有读权限
然后根据需要授权
GRANT READ ON DIRECTORY bfile_dir1 TO scott;
建立一个含有bfile字段的表
create table bfiletest(id number(3), fname bfile);
建立一个含有BLOB字段的表
create table blobtest(id number(3),ablob blob);
2.插入数据
这里需要使用bfilename来进行bfile字段的insert 或者 update操作
INSERT INTO bfiletest
VALUES (1, BFILENAME ('tmpdir', 'tmptest'));
bfilename的参数1是DIRECTORY名,参数2是文件名。注意:这一行中插入的是 ......
Oracle Stream 配置
环境:
OS:Redhat Linux
Oracle 10.2.0.4
source:TEST
destnation:STANDBY
==准备==
1.归档日志配置:
SQL> archive log list;
Database log mode Archive Mode
Automatic archival Enabled
Archive destination /home/oracle/archivelog
Database log mode Archive Mode
Automatic archival Enabled
Archive destination /home/oracle/archivelog
---以下没有专门说明的都是sys用户---
2.在源stream1上配置Supplemental loging:
在源上:
SQL> alter database add supplemental log data;
Database altered.
3.两台机器上修改global_name:
stream1:
SQL ......
Oracle PGA参数
PGA: 程序全局区,服务器进程使用的内存区域,包括特定服务器进程的数据和控制信息,例如使用的操作系统资源等。
UGA: 用户全局区,特定Session使用的内存区域,例如Session的SQL工作区、登陆认证信息等。Session的SQL工作区大小对查询性能的影响比较关键,shared server模式时UGA从SGA的large pool(如果有设置)或者shared pool(没有设置large pool)中分配,dedicated server模式时UGA从PGA中分配。
CGA: 调用全局区,存放调用过程中需要的数据,例如parse调用、executive调用、fetch调用等。调用过程中实际需要的数据,例如SQL Area、Sort Area等位于UGA中,CGA存放的只是调用过程中的临时处理数据,例如I/O缓存、临时堆栈空间等。CGA位于PGA中(PGA是集中管理这些资源的地方),在调用开始时创建,调用执行过程中动态分配,调用结束后释放。
WORKAREA_SIZE_POLICY = { AUTO | MANUAL }
{ ALTER SYSTEM | ALTER SESSION } SET WORKAREA_SIZE_POLICY = { AUTO | MANUAL }
设为AUTO时,内存使用比较多的SQL操作,例如sort, group-by, hash-join, bitmap merge和bitmap create等,由Oracle自动分配;设为MANUAL时,这些操作将使用相应的*_AREA_SIZE参 ......