有人遇到这么一个问题,访问一个序列怎么出错了,错误如下: ORA-08002: 序列 SEQ_GX.CURRVAL 尚未在此会话中定义 这是因为在一个新的会话中,序列需要初始化,也就是通过.NEXTVAL来完成序列的初始化。 测试如下: Connected to Oracle Database 10g Enterprise Edition Release 10.2.0.4.0 Connected as crmii SQL> SQL> create sequence SEQ_TEST 2 minvalue 1 3 maxvalue 999999999999 4 start with 369161 5 increment by 1 6 cache 20 7 order; Sequence created SQL> SELECT SEQ_TEST.CURRVAL from DUAL; SELECT SEQ_TEST.CURRVAL from DUAL ORA-08002: 序列 SEQ_TEST.CURRVAL 尚未在此会话中定义 SQL> SELECT SEQ_TEST.NEXTVAL from DUAL; NEXTVAL ---------- 369161 SQL> SELECT SEQ_TEST.CURRVAL from DUAL; CURRVAL ---------- 369161 SQL> -The End- ......
在前面学习Oracle数据库基础架构时,已经了解了Oracle的存储结构,逻辑上,Oracle的数据存放在tablespaces中,物理上存放在datafiles中。一个tablespace只能属于一个数据库(一个数据库可包括多个tablespace),包括了1个或多个数据文件。Tablespace可进一步分为segments、extents和blocks。一个datafile只属于一个数据库的一个tablespace。
Tablespace的分类有2种,一种分为SYSTEM tablespace和Non-SYSTEM tablespace。
SYSTEM tablespace是随数据库的创建而创建的,包含了数据字典和SYSTEM undo segment;Non-SYSTEM tablespace包括了分配给用户的空间便于数据库的空间管理。
另一种分为permanent、undo、temporary三种tablespace。一般不加特别说明时所创建的permanent tablespace,保存永久性对象;undo tablespace用于保存undo segments以便于回滚操作,而不能包含其他对象;temporary tablespace是用于进行排序操作,能够被多个用户共享,不能包含永久性对象.
Temporary tablespace中有一个default temporary tablespace,指定了一个全局的默认临时表空间,如果没有这个表空间,默认情况下,是使用SYSTEM tablespace来存储临时数据的,显然,这是不好的,默认临时表空 ......
其实创建dg网络上的文档很多,我是看小布老师是视频学习的
用虚拟机做测试,弄了好几天,下面记录一下曾经做过印象比较深的地方
1.将Primary服务器处于归档模式和Force Logging模式
SQL> SHUTDOWN IMMEDIATE;
SQL> STARTUP MOUNT;
SQL> ALTER DATABASE ARCHIVELOG;
SQL> ALTER DATABASE OPEN;
SQL>archive log list
SQL>alter database force logging
2.修改Primary服务器的参数文件
SQL>create pfile from spfile; #
修复生成的pfile文件添加以下内容(成功的例子)
DB_UNIQUE_NAME=uqn_node1
LOG_ARCHIVE_CONFIG='DG_CONFIG=(uqn_node1,uqn_node2)'
LOG_ARCHIVE_DEST_2='SERVICE=lsnode2 LGWR ASYNC VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=uqn_node2'
LOG_ARCHIVE_DEST_STATE_1=ENABLE
LOG_ARCHIVE_DEST_STATE_2=ENABLE
FAL_SERVER=lsnode2
FAL_CLIENT=lsnode1
DB_FILE_NAME_CONVERT='172.16.2.200:/u01/app/oracle/oradata/ict','172.16.2.201:/u01/app/oracle/oradata/ict'
LOG_FILE_NAME_CO ......
emp员工表
(empno员工号/ename员工姓名/job工作/mgr上级编号/hiredate受雇日期/sal薪金/comm佣金/deptno部门编号)
------1.选择部门30中的所有员工.
select ename
from emp
where deptno = 30;
------2.列出所有办事员(CLERK)的姓名,编号和部门编号.
select ename,empno,deptno
from emp
where job='CLERK';
------3.找出佣金高于薪金的员工.
select *
from emp
where nvl(comm,0)>sal;
------4.找出佣金高于薪金的60%的员工.
select *
from emp
where nvl(comm,0)>sal*0.6;
------5.找出部门10中所有经理(MANAGER)和部门20中所有办事员(CLERK)的详细资料
select *
from emp
where deptno=10 and job ='manager'
or deptno=20 and job ='CLERK';
------6.找出部门10中所有经理(MANAGER),部门20中所有办事员(CLERK),既不是经理又不是办事员但其薪金大于或等于2000的所有员工的详细资料.
select *
from emp
where deptno=10 and job ='manager'
or deptno=20 and job ='CLERK'
or deptno not in ('manager','CLERK') and sal >=2000;
------7.找出收取佣金的员工的不同工作.
select distinct job
from emp
where ......
Oracle Database 10g Release 2 (10.2.0.1.0) Enterprise/Standard Edition for Microsoft Windows (32-bit)
http://download.oracle.com/otn/nt/oracle10g/10201/10201_database_win32.zip
http://download.oracle.com/otn/nt/oracle10g/10201/10201_client_win32.zip
http://download.oracle.com/otn/nt/oracle10g/10201/10201_clusterware_win32.zip
http://download.oracle.com/otn/nt/oracle10g/10201/10201_gateways_win32.zip
Oracle Database 10g Release 2 (10.2.0.1.0) Enterprise/Standard Edition for Microsoft Windows (x64)
http://download.oracle.com/otn/nt/oracle10g/10201/102010_win64_x64_database.zip
http://download.oracle.com/otn/nt/oracle10g/10201/102010_win64_x64_client.zip
http://download.oracle.com/otn/nt/oracle10g/10201/102010_win64_x64_clusterware.zip
Oracle Database 10g Release 2 (10.2.0.1.0) Enterprise/Standard Edition for Linux x86
http://download.oracle.com/otn/linux/oracle10g/10201/10201_database_linux32.zip
http://download.oracle.com/otn/linux/oracle10g/10201/10201_client_linux32.zip
h ......
昨天看了篇不是很严谨的博文《一个算命小偷程序的诞生》,里面写了一个通过AJAX偷窃别人网站算法的方法。实践了一下根本不行,AJAX似乎不能跨域。
后来我想了一些解决方法,终于跨域成功。现在公布一下方法。
任务:在自己网站做个表单,向【就爱算命网】提交请求,然后将【就爱算命网】的算命结果显示在自己的网站上。
思路:既然跨域不行,就不跨域呗。
我发现这个网站用http://www.92suanming.com/ ajax/suanming.ashx这个文件处理GET请求,然后返回算命结果。那么我们只需在自己的网站上也建立个suanming.ashx文件,然后写入以下代码就不必跨域啦。
string btd=Request.Form["btd"].ToString();//在本地获取生日
string url="http://www.92suanming.com/ ajax/suanming.ashx?&gender='1'&btd='"++btd"'";
WebRequest wrq;
HttpWebResponse wrp;
wrq=HttpWebRequest.Create(urls);
wrp=(HttpWebResponse)wrq.GetResponse();
Stream resStream=wrp.GetResponseStream();
StreamReader sr = new Stre ......