当前位置:文档之家› ORACLE数据库开发经验总结

ORACLE数据库开发经验总结

ORACLE数据库开发经验总结
ORACLE数据库开发经验总结

ORACLE数据库开发经验总结

ORACLE数据库作为大型数据库管理系统,近年来一直占有世界上高端数据库的最大份额,其强大而完善的数据库管理功能,以及ORACLE公司推陈出新的不断努力,一直成为IT业界瞩目的焦点。本人在ORACLE系统的开发中,就ORACLE的整套开发工具提出一些自己的体会,供同行参考。

O RA CLE数据库作为大型数据库管理系统,近年来一直占有世界上高端数据库的最大份额,其强大而完善的数据库管理功能,以及O RAC LE公司推陈出新的不断努力,一直成为IT业界瞩目的焦点。岭澳核电站的数据库平台采用了OR ACL E7.3作为后端平台,前端选择了ORACLE公司的DEVELOPER 2000 及DE SI GNER 2000作为开发工具,采用了目前流行的CLI ENT/SERVER模式。本人在ORACLE系统的开发中,就ORACLE的整套开发工具提出一些自己的体会,供同行参考。

一. ORACLE SQL PLUS 使用技巧:

----①查找重复记录:

SE LEC T DRAWING,DSNO F ROM EM5_P IP E_PREFAB

WHERE ROWID!=(SELECT MAX(ROWID) FROM EM5

_PIPE_PREFAB D

WHERE EM5_PIPE_PREFAB.DRAWING=D.DRAWING AND

EM5_PIPE_PREFAB.DSNO=D.DSNO);

----执行上述SQL语句后就可以显示所有DRAWING和DSNO相同且重复的记录。

----删除重复记录:

DELETE FROM EM5_PIPE_PREFAB

WHERE ROWID!=(SELECT MAX(ROWID) FROM EM5

_PIPE_PREFAB D

WHERE EM5_PIPE_PREFAB.DRAWING=D.DRAWING AND

EM5_PIPE_PREFAB.DSNO=D.DSNO);

----执行上述SQL语句后就可以刪除所有DRAWING和DSNO相同且重复的记录。

----②快速编译所有视图

----当在把数据库倒入到新的服务器上后(数据库重建),需要将视图重新编译一遍,因为该表空间视图到其它表空间的表的连接会出现问题,可以利用PL/S QL的语言特性,快速编译。

SQL >SPOOL ON.SQL

SQL >SELECT ‘ALTER V IE W ‘||TNAME||’

CO MPILE;’ FROM TAB;

SQL >SPOOL OFF

然后执行ON.SQL即可。

SQL >@ON.SQL

当然,授权和创建同义词也可以快速进行,如:

SQL >SELECT ‘GRA NT SELECT ON ’

||TNAME||’ TO USERNAME;’ FROM TAB;

SQL >SELECT ‘CR EATE SYNONYM

‘||TNAME||’ FOR USERNAME.’||TNAME||’;’ FROM TAB;

③用外联接提高表连接的查询速度

在作表连接(常用于视图)时,常使用以下方法来查询数据:

SELECT PAY_NO, PROJECT_NAME

FROM A

WHERE A.PAY_NO NOT IN (SELECT PAY_

NO FROM B WHERE VALUE >=120000);

----但是若表A有10000条记录,表B有10000条记录,则要用掉30分钟才能查完,主要因为NOT IN要进行一条一条的比较,共需要10000*10000次比较后,才能得到结果。该用外联接后,可以缩短到1分左右的时间:

SELECT PAY_NO,PROJECT_NAME

FROM A,B

WHERE A.PAY_NO=B.PAY_NO(+)

AND B.PAY_NO IS NULL

AND B.VALUE >=12000;

----④怎样读写文本型操作系统文件

----在PL/SQL 3.3以上的版本中,UTL_FILE包允许用户通过PL/SQL读写操作系统文件。如下:

DE CA LRE

FILE_HANDLE UTL_FILE.FILE_TYPE;

BEGIN

FILE_HANDLE:=UTL_FILE.FOPEN(

‘C:\’,’TEST.TXT’,’A’);

UTL_FILE.PU T_LINE(FILE_HANDLE,’

HELLO,IT’S A TEST TXT FILE’);

UTL_FILE.FCLOSE(FILE_HANDLE);

END;

----相关UTL_FILE数据库包详细信息可以参见相关资料。

----⑤怎样在数据库触发器中使用列的新值与旧值

----在数据库触发器中几乎总是要使用触发器基表的列值,如果某条语句需要某列修改前的值,使用:OLD就可以了,使用某列修改后的新值,用:NEW就可以了。

如:OLD.DEPT_NO,:NEW.DEPT_NO。

二.ORACLE DEVELOPER 2000使用技巧:

----①改变FORM(FMX模块)运行时的Runform4.5的题头:

----DEVELOPER2000中FMX默认题头为:Developer/2000 Forms Runtime for Windows 95 / NT 你可以改为自己定义的标题,

----1. 在Form级触发器中添加触发WHEN-NEW-FORM-INSTANCE

----2. 在此触发器中写如下代码:

set_window_property(FORMS_MDI_WINDOW,TITLE,'POINT

SYSTEM 欢迎使用');

----②如何隐藏菜单中的window选项:

----在创建自己的菜单时,最后选项总有window项,下面介绍如何去掉它,

----1. 创建一个Menu

----2. 在Menu中建立一个Item,命名为WINDOW。

----3. 设置该Item属性如下:

----Menu Item Type:Magic

Command Type:Null

Magic Item:Window

Lable:为空

----③怎样创建动态下拉列表List

----Developer 2000 中的列表是通过设置相关属性而完成数据项的列表设置的,但那只是静态的,有时你想让某项成为动态的列表,随输入数据的改变而改变,就需要动手去编个小程序。下面详细介绍怎样去做:

----有块EBOP_CAB LE_ACCOUNT,下有SPECIF IC ATION数据项,当一进入该模块时,就将SPECIFICATION项在数据库中存储的值动态显示出来,先在Form4.5中建立一个PRCEDURE,命名为DYN_LIST:

PROCEDURE DYN_LIST IS

CURSOR C1 IS

SELECT DISTINCT(SPECIFICATION)

FROM EBOP_CABLE_ACCOUNT;

CNT NUM BER;

i NUMBER;

TNAME EBOP_CABLE_

ACCOUNT.SPECIFICATION%TYPE;

BEGIN

CLEAR_LIST('EBOP_CABLE_

ACCOUNT.SPECIFICATION');

SELECT COUNT(DISTINCT

(SPECIFICATION)) INTO CNT FROM EBOP

_CABLE_ACCOUNT;

open C1;

FOR i IN https://www.doczj.com/doc/a83434372.html,T L OOP

FETCH C1 INTO TNAME;

EXIT WHEN C1%NOTFOUND

OR C1%NOTFOUND IS NULL;

ADD_LIST_ELEMENT

('EBOP_CABLE_ACCOUNT

.SPECIFICATION',i,TNAME,TNAME);

END LOOP;

DELETE_LIST_ELEMENT

('EBOP_CABLE_ACCOUNT.SPECIFICATION',CNT+1);

CLOSE C1;

END;

然后在FORM的WHEN-NEW

-FORM-INSTANCE触发子中加入一行:

DYN_LIST;

----这样一进入该FMX,就会动态刷新该列表。除此之外,SPECIFICATION数据项改为列表项。

----④当显示多条记录且数据项特别多时,如何组织录入及显示界面:

----如上图所示,PRN代码及设备代码在画布1(CONTENT型)上,其它数据项在画布

2(ST ACK型)上,所有数据项为一个表的列或一个块的数据项。在拉动水平滚动条时或用TAB或敲回车键时,将看到全部数据项。这种排布方法适用于数据项特别多又想显示多条记录时用。主要制作顺序为:先建立两个画布,画布1(CONTENT型),画布2(STACK型),然后建立块,选画布时用画布1,这样所有项都显示在画布1上,然后选中除PRN代码及设备代码之外的所有数据项,选TOOLS菜单下的PRO PERT IES选项,将这些数据项的CANVAS属性选为画布2(STACK型),然后调整整体位置就可以了。

----⑤如何在FORM的受限触发子中提交保存数据

----在FORM中很多触发子是不能用COMMIT WORK语句的,当你在该触发子中使用了U PDA TE,DELETE等操作并想立即存盘时,就需要COMMIT WORK语句了。首先在服务器端建立DB_SQL_COMMIT这个过程(采用ORACLE7.3数据库),

PROCEDURE DB_SQL_COMMIT IS

source_cursor integer;

ignore integer;

V7 NUMBER :=2;

BEGIN

source_cursor:=dbms_sql.open_cursor;

dbms_sql.parse(source_cursor,'COMMIT WORK',V7);

ignore:=dbms_sql.execute(source_cursor);

DBMS_SQL.CLOSE_CURSOR(source_cursor);

END;

----然后在FORM中该触发子中调用过程DB_SQL_COMMIT;就可以了,当然你可以根据自己需要将该过程加入参数,这样通过参数可以得到执行DML语句的权限。

----⑥如何在FORM中实现某数据项自动按记录序号加一操作

----设块名为VO,要操作的数据项为VO_ID,在该块中建立块级触发子WHEN-CRE ATE- RECO RD,加入如下代码:

:VO_ID:=:System.Trigger_Record;

----这样每当生成新记录时VO_ID就会自动加一了。

----⑦如何在一个FORM中调用另一个FORM,或在一个块中调用另一个块时显示特定的记录有时用户会要求在调用另一个FORM时,只显示相关的记录,举例如下,在一个FORM的块中有一个按钮,在按钮触发子中加入如下代码:

DECLARE

PM

PARAMLIST;

BEGIN

PM:=GET_PARAMETER_LIST('PM');

IF NOT ID_NULL(PM) THEN

DESTROY_PARAMETER_LIST('PM');

END IF;

PM:=CREATE_PARAMETER_LIST('PM');

......................

ADD_PARAMETER(PM,'THE_WHERE',

TEXT_PARAMETER,'EM_NAME=''EM4''

AND EM_PROJECT_NAME=''支架预制''');

OPEN_FORM('PAYMENT',A CTI VATE,SESSION,PM);

END;

----其中EM_NAME,EM_PROJECT_NAME为本FORM某块的数据项,PAYMENT为要调用的FORM模块。这样通过传递参数列表就可以得到想要的结果。在FORM. PAYMENT.FMB中,建立一参数THE_WHERE,CHAR型,长1000,然后在PAYMENT.FMB 中建立FORM级触发子WHEN-NEW-FORM-INSTANCE,在该触发子中加入以下语句:

IF :PARAMETER.THE_WHERE IS NOT NULL THEN

SET_BLOCK_PROPERTY('PAYMENT',

DEFAULT_WHERE,:PARAMETER.THE_WHERE);

END IF;

----其中PAYMENT为要显示的块,这样通过参数传递就得到想要的某些特定条件的数据了。

----⑧在FORM中当有主从块时,连续输入记录如何避免被不断的提示保存:

----每输入一条主记录和若干条该主记录的从记录后,此时再导航到主块输下一条记录,FORM就会提示你是否要保存记录,而你并不希望FORM提示,让它自动保存,此时你可以到Program Units中找到过程PROCEDURE Clear_All_Master_Details,然后在这个过程中找到语句

Clear_Block(ASK_COMMIT);

----将其改为Clear_Block(DO_COMMIT);就可以了。

----⑨在Report开始时选择排序项:

----在报表开始的Parameter Form中选择报表按哪个数据项排序,

----1. 先在USER PARAMETER 中创建SORT参数,为字符型,长20。

----2. 初始值选’责任方’,然后将这四个值输入到DAT A SELECTION中,形成列表。

----3. 然后处理QUERY中的SQL语句:

select CHARGER,FCO_NO,EM_NAME,FCO

_NO,DESC RIP TION, FCR_POINT

from FCR_M AI N

ORDER BY DE COD E(:SORT,'责任方',CHARGER,'FCO号',

FCO_NO,'FCR号',FCR_NO,'FCR号',EM_NAME)

----⑩在Developer 2000中如何读写操作系统文件

----在用Developer 2000的开发工具开发应用程序时,经常碰到需要读写外部文件的问题,可以用ORACLE 带的包TEXT_IO来完成这项需求。例如:

DECLARE

IN_FILE TEXT_IO.FILE_TYPE;

OUT_FILE TEXT_IO.FILE_TYPE;

LINE_BUFER VARCHAR2(80);

/*若不用IN_FILE,可以将各字段联接在一起赋值给此变量*/

BEGIN

IN_FILE:=TEXT_IO.FOPEN

(‘C:\TEMP\TES T1.TXT’,’r’);

OUT_FILE:=TEXT_IO.FOPEN

(‘C:\TEMP\TEST2.TXT’,’w+’);

LOOP

TEXT_IO.GET_LINE(IN_FILE,LINE_BUFER);

TEXT_IO.PUT(LINE_BUFER);

TEXT_IO.NEW_LINE;

TEXT_IO.PUT_LINE(OUT_FILE,LINE_BUFER);

END LOOP;

EXCEPTION

WHEN no_data_found THEN

TEXT_IO.PUT_LINE(‘CLOSING THE FILE ,PLEASE W AIT ING....’);

TEXT_IO.FCLOSE(IN_FILE);

TEXT_IO.FCLOSE(OUT_FILE);

END;

三.数据库管理

----①在删除一个表中的全部数据时,须使用TRUNCATE TABLE 表名;因为用DROP TABLE,DELETE * FROM 表名时,TABLESPACE表空间该表的占用空间并未释放,反复几次DROP,DELETE操作后,该TABLESPACE上百兆的空间就被耗光了。

----②数据库文件的移动方法

----当想将数据库文件移动到另外一个目录下时,可以用ALTER D ATA BASE命令来移动(比ALTER TABLESPACE适用性强):

----1. 使用SERVER MANAGER关闭实例.

SVRMGR > connect internal;

SVRMGR > shutdown;

SVRMGR >exit;

----2. 使用操作系统命令来移动数据库文件位置(假设这里操作系统为SOLA RIS 2.6). 在UNIX中用mv命令可以把文件移动到新的位置,

#mv /ora13/orarun/document.dbf /ora12/orarun

----3. 装载数据库并用alter database命令来改变数据库中的文件名.

SVRMGR > connect internal;

SVRMGR > startup mount RUN73;

SVRMGR > alter database rename file

> ‘/ ora13/orarun/document.dbf’

> ‘/ ora12/orarun/document.dbf’;

----4. 启动实例.

SVRMGR > alter database open;

----(huangfutong@https://www.doczj.com/doc/a83434372.html,)

----ORACLE数据库开发经验总结

ORACLE数据库安全规范

数据库安全规范

1概述 1.1适用范围 本规范明确了Oracle数据库安全配置方面的基本要求。 1.2符号和缩略语 2 ORACLE安全配置要求 本规范所指的设备为ORACLE数据库。本规范提出的安全配置要求,在未特别说明的情况下,均适用于ORACLE数据库。 本规范从ORACLE数据库的认证授权功能和其它自身安全配置功能提出安全要求。 2.1账号 ORACLE应提供账号管理及认证授权功能,并应满足以下各项要求。 2.1.1按用户分配帐号

2.1.2删除或锁定无关帐号 2.1.3用户权限最小化 要求内容 在数据库权限配置能力内,根据用户的业务需要,配置其所需的最小权

限。

grant 权限 to user name; revoke 权限 from user name; 2、补充操作说明 用第一条命令给用户赋相应的最小权限 用第二条命令收回用户多余的权限 业务测试正常 4、检测操作 业务测试正常 5、补充说明 2.1.4使用ROLE 管理对象的权限 1. 使用Create Role 命令创建角色。 2.使用用Grant 命令将相应的系统、对象或 Role 的权限赋予应用用户。 2、补充操作说明 对应用用户不要赋予 DBA Role 或不必要的权限。 4、检测操作 1.以DBA 用户登陆到 sqlplus 中。 2.通过查询 dba_role_privs 、dba_sys_privs 和 dba_tab_privs 等视图来检查 是否使用ROLE 来管理对象权限。 5、补充说明 操作指南 1、参考配置操作 检测方法 3、判定条件 要求内容 使用数据库角色(ROLE )来管理对象的权限。 操作指南 1、参考配置操作 检测方法 3、判定条件

股市高手超短打板术笔记买入逻辑与卖出技术经验完整版

股市高手超短打板术笔记买入逻辑与卖出技术 经验 集团标准化办公室:[VV986T-J682P28-JP266L8-68PNN]

股市高手超短打板术笔记(五):买入逻辑与卖出技术 高手操盘思维----买入逻辑与卖出技术 炒股中一个非常重要的概念:买入逻辑与卖出技术。如果不明白此句,就是不明白操盘的精髓。一个朋友提到了这句话,问什么意思。这句话是一位高手说的,我觉得总结得非常好。吧中确有很多前辈高手留下的只言片语非常重要,值得学习。我毫无保留的解读一下:高手操盘:“买入逻辑与卖出技术”。散户操盘:“买入技术(价值)与卖出臆测”。这就是区别。我们先谈买入的问题。很多散户买入的思维是“价值与技术”;高手与普通散户操盘的角度完全不一样。个股价值是什么技术形态是什么在中国股市就是臆淫。股票的上涨只取决于主力是否引导拉动。散户的操盘逻辑:是按照表面的东西操作K线形态、主力提供的价值报告,简单、粗暴、单一。高手的操盘逻辑:透过表面的现象,遵循内在操盘逻辑要求买入,不受表象的东西影响。逻辑是规律和规则的推理,其实也是一种因果思维。高手买入一定是在思维的认识上,在其操作系统的多个角度确认逻辑成立后,才是出手的时候,绝不是去单一的分析这只股表面的“价值和前途”而出手。“逻辑”对主力与高手很重要,不同高手的模式和体系,不同层面的主力,必然会有不同的逻辑。原因就在于:对象和目的不同。比如:游资要收割散户,有的大主力要收割游资,有的小主力要偷袭基金,有的高手要借力游资收割散户等等。对象和目的决定了不同的操盘思维与逻辑。而在逻辑的层次,也存在共性和个性的区别。也可以说是宏观与微观区别。共性自然是宏观层面。不论什么主力或是高手都必须对大环境有客观的把握,追逐的都是大

oracle数据库笔记001

如果出现协议器出错,我们就用这样的命令: 先用exit跳出sqlplus,再用net start(stop) oracleserviceORCL, 我们在启动oracleserviceORCL 分配的空间我们称之为实例服务,监听服务的启动:命令LSNRCTL START Oracle服务器:oracle实例(内存sid)oracle数据库(物理数据库)多个实例对应一个数据库:ops 和ras(多个sga) 一个实例对应一个数据库:单点数据库(通常情况) 一个实例只能访问一个数据库 Oracle的 Show parameter instance name 查询实例服务 Show parameter db_name 查询查询数据库名字 Select name from v$database 查询数据库名字 Show sga 查询sga 大小 Desc v$tablespace 查询表空间 Spool D:/oracel317.txt 指定文件存放位置执行完之后就要执行spool off Spool off 输出结束 Oracle数据库存储的结构 数据库逻辑结构:实例

数据库物理存储结构:数据文件(data file)控制文件(control file)日志文件(log file)归档文件() 查询数据文件:select name,bytes from v$datafile; 启动一个数据库步骤: (1)申请一个实例 (2)读取控制文件 (3)根据控制文件提供的信息找,关联物理数据库,就能连接数据库 查询各类数据文件夹desc v$datafile ; 数据的操作: 一个表(tablespace)有多个Segment 数据段 一个段(Segment)有多个区(extent) 一个区(extent)有多个块(data block) 数据块(data block)是有多个系统块组成(OS block) 单个表对应单个数据文件 查询select file_name,tablespace 创建表空间:create tablespace testtp datafile ‘d:/testtp01.dbf’size 1m autoextend on next 1m maxsize 10m; 但表空间已存在的时候,会报表空间已存在我们需要增加一个 Alter tablespace testtp add datafile ‘h:/testtp02.dbf’size 10m

ORACLE数据库设计规范

1命名原则 1.1约定 u是指对数据库、数据库对象如表、字段、索引、序列、存储过程等的命名约定; U命名使用富有意义的英文词汇,尽量避免使用缩写,多个单词组成的,中间以下划线分割 u避免使用Oracle的保留字如LEVEL、关键字如TYPE (见Oracle保留字和关键字); u各表之间相关列名尽量同名; u除数据库名称长度为1 — 8个字符,其余为1 — 30个字符,Database link 名称也不要超过30个字符; u命名只能使用英文字母,数字和下划线; 1.2表名 规则如下: 命名规则为xxx_yyy_TableName 。xxx表示开发公司的名称,最多五个字母构成,尽量用简称;yyy 表示子系统中的子模块的名称(可以没有),最多五个字母构成,尽量用简称;TableName 为表含义,最多十个字母构成,尽量用简称 TableName 规则如下: u使用英文单词或词组作为表名,不得使用汉语拼音 u用名词和名词短语作表名 u不使用复数 正确的命名,例如: fiber_sys_user fiber_biz_order 1.3存储过程 规则如下: 命名规则为xxx_yyy_StoredProcedureName 。xxx表示开发公司的名称,最多五个字母构成,尽量用 简称;yyy表示子系统中的子模块的名称(可以没有),最多五个字母构成,尽量用简称;

StoredProcedureName 规则如下: u用动词或动词短语来命名,并带有宾语 u需要符合用Pascal命名规则。 u尽量谨慎地使用缩写 u尽量不要和关键字重合 u不要用任何名前缀(例如U , B) u StoredProcedureName 内不使用下划线 u当操作依赖条件时,一般结尾使用By+条件 存储过程正确的命名,例如: sys_lnsertUser sys_SearchUserByUserlD sys_DeleteUserByUserlD 1.4视图 规则如下: u视图的命名采用xxx_yyy_ ViewName_v 。xxx表示开发公司的名称,最多五个字母构成,尽量用简称;yyy表示子系统中的子模块的名称(可以没有),最多五个字母构成,尽量用简称;_v后缀表示视图, ViewName 部分表示视图的含义,最多十个字母构成,尽量用简称。 ViewName 规则如下: u用名词和名词短语, u不使用复数 u用Pascal命名规则 u尽量谨慎地使用缩写 u尽量不要和关键字重合 u不要用任何名前缀(例如U,B) u ViewName 中使用下划线 视图正确的命名,例如:

(Oracle数据库管理)玩转实战教程学习笔记最全版

(O管理)玩转实战教程(韩顺平)学习笔记

韩顺平—玩转oracle视频教程笔记 一:Oracle认证,与其它数据库比较,安装 oracle的卸载 1.停止所有与ORACLE相关的服务。 2. 使用OUI(Oracle Universal Installer)卸载Oracle软件。 “开始”->“程序”->“Oracle-OraDb110g_home1|Oracle installation product|Universal installer. 3.删除注册表内容。运行regedit命令,删除下面内容:HKEY_LOCAL_MACHINE|SOFTWARE|ORACLE注册表键,删除此键。 HKEY_LOCAL_MACHINE|SYSTEM|CurrentControlSet|Services,删除Services键下所有以oracle为首的键。 HKEY_LOCAL_MACHINE|SYSTEM|CurrentControlSet|Services|Eventlog|Application,删除此键下所有以oracle为首的键。 HKEY_CLASSES_ROOT,删除此键下所有以Ora,Oracle,Orcl,EnumOra 为前缀的键。 HKEY_CURRENT_USER|Software| Microsoft|Windows|CurrentVersion|Explorer|MenuOrder|Start Menu|Programs,删除此键下所有以oracle为首的键。 HKEY_LOCAL_MACHINE|SOFTWARE|ODBC|ODBCINST.INI注册表键,删除了

oracle11g数据库管理与开发第7章答案.

第7章安全管理 一、填空题 1.Oracle数据库用户口令认证可以采用数据库验证、外部验证、全局验证等几种方式。 2.Oracle数据库概要文件主要用于资源管理、控制口令等。 3.Oracle数据库中的权限分为系统权限和对象权限两种类型,向用户直接授权需要grant权限to用户SQL语句。 4.用户连接Oracle数据库后希望得到角色权限,这有两种实现方法:一种方法是让管理员把角色设置为用户默认角色,另一种方法是向用户授予角色,需调用的SQL语句是grant 角色to用户。 二、简答题 1.简要说明在oracle数据库内普通用户口令认证和管理员口令认证都有哪些方法? 答:oracle数据库普通用户口令认证有以下3种认证方法: (1)数据库认证(2)外部认证(3)全局认证 管理员口令认证有以下3种认证方法: (1)口令文件认证(2)操作系统认证(3)基于网络认证服务认证 2.简述用户通过默认角色和非默认角色获得权限有何异同? 答:用户通过默认角色获得权限时,用户默认角色在用户连接后被自动激活,所以用户不用显式启用角色就可以立即获得它们所具有的权限。而通过非默认角色获得权限时,必须通过命令调用为其授权,才能使非默认角色获权。 三、实训题 1.请创建一个用户books_pub,要求他第一次登录时必须修改口令,将其默认表空间和默认临时表空间分别设置为books_pub和temp,并在表空间users,demots和books_pub上分别为他分配10MB,10MB和50MB的存储空间。 create tablespace books_pub//创建books_pub表 datafile'f:\app\administrator\admin\orcl\hcy_1.dbf'size5M; create tablespace demots//创建demots表 datafile'f:\app\administrator\admin\orcl\hcy_2.dbf'size5M; create user books_pub//创建books_pub用户 identified by123 password expire default tablespace books_pub temporary tablespace temp quota10M on users quota10M on demots quota50M on books_pub; 2.把创建会话的系统权限,以及scott用户dept表和emp表上的所有对象授予用户books_pub。

ORACLE笔记

1.Oracle 工具:sqlplus Sqlplus / as sysdba Shutdown immediate(关闭数据库) Startup(启动数据库) 注意:数据库开启才可以进行操作 Select username,account_status from dba_users;(查询数据库中所有的用户名称与用户状态) Alter user scott identified by tiger account unlock;(scott用户解锁) Sqlplus scott/tiger(使用SCOTT 密码为tiger登陆ORACLE数据库) Connect scott/tiger (在SQL>中直接使用SCOTT用户连接数据库) Show all;(看所有变量) Set sqlprompt “_user>”(设置sqlplus环境下面的提示符用自身用户显示) 注意:如要变量下次重启生效必须把变量写入 /u01/app/oracle/product/10.2.0/db_1/sqlplus/admin/glogin.sql中 Host(回到系统) Help index(查看所有命令) Help+命令(类似于LINUX中的MAN,查看命令的格式与用法) Disconnect(关闭SQLPLUS工具但是不离开数据库) Describe emp(查看EMP表) Define(定义变量,常用与写脚本用) 如:DEFINE _EDITOR =”vi” (CHAR) (定义VI编辑器用于保存最后一条执行的SQL语句) Save /u01/app/oracle/aa.sql (保存SQL语句) Get /u01/app/oracle/aa.sql (调用保存的SQL语句) 2.select(select 查询语句是ORACLE中最常用的语句) DML语句包括(insert 写入,update改变,delect删除,merge两张表同步) 注意:merge常用在ETL(数据仓库)底下 DDL数据定义语句包括(create创建对象,alter修改,drop删除对象,rename改名,truncate 删除整个表) TCL事务处理语句(commit提交立刻生效,rollback回滚,savepoint保存点,savepoint(保存点) DCL权限语句(grant赋予权限,revoke(收回权限) ORACLE的表称之为堆表(keep table) SELECT (1) writing basic SQL select statemanes 1. selecting all columns SCOTT>select * from dept; SCOTT>select dname,deptno,loc from dept; Basic SELECT Statement SELECT *|{[DISTINCT] column|expression [alias],...} FROM table;

oracle学习笔记

●PLSQL控制台输出语句 SET serveroutput ON; --打开控制台输出服务 dbms_output.put_line('values2='||var_val); --输出语句 ●PLSQL动态变量 var_str := '&input'; ●创建表空间和用户 --创建表空间 CREATE TABLESPACE "BCPBS" LOGGING DATAFILE 'D:\app\E430\oradata\orcl\BCPBS_01.ora' SIZE 2048M AUTOEXTEND ON NEXT 10M MAXSIZE UNLIMITED, 'D:\app\E430\oradata\orcl\BCPBS_02.ora' SIZE 2048M AUTOEXTEND ON NEXT 10M MAXSIZE UNLIMITED EXTENT MANAGEMENT LOCAL SEGMENT SPACE MANAGEMENT AUTO ; --建立用户 CREATE USER "BCPBS" PROFILE "DEFAULT" IDENTIFIED BY "bcpbs123" DEFAULT TABLESPACE "BCPBS" TEMPORARY TABLESPACE "TEMP" ACCOUNT UNLOCK; GRANT "CONNECT" TO "BCPBS"; GRANT "DBA" TO "BCPBS"; GRANT "RESOURCE" TO "BCPBS"; ●删除表空间和用户 drop user bcpbs cascade ; drop tablespace BCPBS including contents and datafiles cascade constraints ; ●自定义函数 CREATE OR REPLACE FUNCTION fun_level_value(level_value number) RETURN number IS return_value number:=null; BEGIN CASE level_value WHEN 0 THEN return_value:='0'; WHEN 1 THEN return_value:='1'; WHEN 2 THEN return_value:='2'; WHEN 3 THEN return_value:='3'; WHEN 6 THEN return_value:='8'; ELSE

Oracle数据库设计规范建议

Oracle数据库设计规范建议 1 目的 本规范的主要目的是希望规范数据库设计,尽量提前避免由于数据库设计不当而产生的麻烦;同时好的规范,在执行的时候可以培养出好的习惯,好的习惯是软件质量的很好的保证。 数据库设计是指对于一个给定的应用环境,构造最优的数据库模式,建立数据库及其应用系统,有效存储数据,满足用户信息要求和处理要求。 2 适用范围 本规范的适用人员范围包括我司的所有应用开发人员以及在我司承接数据库应用开发的软件人员。 本规范的适用IT范围包括数据库对象的命名规范、设计原则、SQL语句的设计和使用、SQL语句的性能优化建议、其他与性能有关的设计原则以及设计工具的选择。 3 数据对象的命名规范 3.1 通用规范 3.1.1 使用英文:要用简单明了的英文单词,不要用拼音,特别是拼音缩写。主要目的很明确,让人容易明白这个对象是做什么用的; 3.1.2 一律大写,特别是表名:有些数据库,表的命名乃至其他数据对象的命名是大小写敏感的,为了避免不必要的麻烦,并且尊重通常的习惯,最好一律用大写; 3.2 数据库对象命名规范 3.2.1 表的命名 3.2.1.1 表名的前缀:前缀_表名_T。为表的名称增加一个或者多个前缀,前缀名不要太长,可以用缩写,最好用下划线与后面的单词分开;其目的有这样几个:3.2.1.1.1 为了不与其他项目或者其他系统、子系统的表重名; 3.2.1.1.2 表示某种从属关系,比如表明是属于某个子系统、某个模块或者某个项目等等。表示这种从属关系的一个主要目的是,从表名能够大概知道如何去找相关的人员。比如以子系统为前缀的,当看到这个表的时候,就知道有问题可以去找该子系统的开发和使用人员; 3.2.2 视图命名:相关表名_V(或者根据需要另取名字); 3.2.3 程序包命名:程序包名_PKG(用英文表达程序包意义); 3.2.4 存储过程命名:存储过程名_PRO(用英文表达存储过程意义);

炒股高手总结五个阶段81条经验

炒股高手总结五个阶段81条经验炒股高手总结的五个阶段: 1,无知蛮干阶段; 2,进修充电阶段; 3,摸索探路阶段; 4,归纳成型阶段; 5,初见成效阶段。 炒股高手总结的81条经验: 1、我入市三年后,发现我比一般股民表现四大突出的优点:刻苦,认真,钻研,求异。相信我能有实现跨进赢家大门槛的能力。 2、我在操作中,不断地要发现自我,改变自我,挑战自我,战胜自我。校正自己,永远比研究市场更重要! 3、我炒股五年后才发现,十年后才证实了炒股赚钱的指路明灯——天道酬勤。我每天在重复只做一件最简单而又最单调复杂的事情,即枯燥又无味,即寂寞无聊!只要能够坚持再坚持,忍耐再忍耐,在忍无可忍的时候,有再忍下去的毅力,始终如一不断地观察坚持记录,一天也不能遗漏,然后通过不断地归纳总结筛选,积累沉淀一定会有我意想不到的惊喜! 4、我炒股十年后,终于诞生了我的炒股总方针:追求稳定,长久,持续地获利。

5、我知道的炒股知识并不少,我在发问自己:真正做到的又有多少?能够做好的又有多少?最后要问独树一帜的你有吗?十多年后的当时我肯定地说,有!可能是独一无二,我坚信!我坚持! 6、我炒股赚钱的工具——我的操作系统。 7、信号第一,铁的纪律。不受个人的情绪影响。它是从由战胜市场转变为顺应市场,由主动性交易转变为被动性交易,操作主要考虑在“应变”而不是在“预测”上。 8、抓住试盘,守株待兔。在常人看来这是愚蠢和原始的,但是真正让我炒股能够稳定,长久,持续地赚到钱的功夫还真是“坐功”。守株待兔关键是选择在哪些树下可以耐心等待,可能这个选择是几年来的心血结晶,心法相同技法却不同。 9、不听忽悠,眼见为实。我要能到手的铜,不要隔山的金子。 10、专家的话是两头堵,总是说如果……那么就会是……,一旦说对了就会炫耀自己看的多么准!一旦说错了他们就会说,我说过如果……那么……,现在是如果的条件没有满足,所以没有走出预想的行情是对的。我说,要是听专家的话炒股,想成为赢家我觉得简直是梦想。 11、我看图是打开图形向左看,先看月线再看周线,压缩图形看趋势,看方向不重价。

Oracle学习笔记

Oracle的四个主要用户 1.超级管理员sys/change_on_install 2.普通管理员system/manager 3.普通用户scott/tiger 4.大数据用户sh/sh 简单查询 1.查询表结构 DESC 表名 2.简单查询SELECT [DISTINCT] *|[字段 [别名]] [,字段 [别名]] … FROM 表名 [别名] (1)查询时也可以使用四则运算,如:SELECT (字段*x)+y FROM 表名 (2)可以使用“||”连接字段与字符串,如: select '工作与工资:' || job || sal 工作工资 from emp 执行结果: 3.限定查询SELECT [DISTINCT] *|[字段 [别名]] [,字段 [别名]] … FROM 表名 [别名] [WHERE 条件(s)] (1)Where字句后可以增加多个条件,最常见的条件就是最基本关系运算:>、<、>=、<=、!=(<>)、BE TWEEN…AND、LIKE、IN(指定范围)、IS NULL(为空)、AND(且)、OR(或)、NOT(非)。 (2)多个条件可以使用AND与OR连接。 例如:select * from emp where sal>1300 and sal<4000 (3)范围判断BE TWEEN…AND:BETWEEN 最小值 AND 最大值(大于等于最小值,小于等于最大值),BE TWEEN…AND 对数字、日期都可以使用!!! 例如:select * from emp where sal between 1300 and 4000 例如:select * from emp where hiredate between '01-1月-1981' and '31-12月-1981' (4)判断为空IS (NOT) NULL 例如:select * from emp where comm is null 例如:select * from emp where comm is not null 例如:select * from emp where not comm is null (5)指定范围的判断(NOT) IN 例如:select * from emp where empno in(7369,7566,7799)

Oracle数据库开发规范

项目编号:××× xxx Oracle数据库开发规范 Oracle DB Development Standardization <部门名称> **年**月**日 文档信息: 文档名称: 文档编号: 文档版本日期: 起草人: 起草日期: 复审人: 复审日期: 版本历史: 版本 日期 作者 更改参考 说明

审批信息: 签字/日期 审核 审批 目录 1 概述 4 1.1 编写目的 4 1.2 文档约定 4 1.3 预期的读者和阅读建议 4 1.4 参考文献 5 2 数据库对象命名 6 2.1 命名总体原则 6 2.2 表名 6 2.3 视图 6 2.4 同义词 6 2.5 序列7 2.6 索引7 2.7 存储过程7 2.8 存储函数8 2.9 存储程序包8 2.10 触发器8 2.11 字段8 2.12 其他9 3 设计规范9 3.1 范围9 3.2 表空间9 3.3 字符集10 3.4 主外键约束10 3.5 分区表10 3.6 RAC下的序列设计10 3.7 字段10 3.8 表结构设计11 3.9 索引设计11 3.10 临时表11 4 SQL编写规范 12 4.1 书写规范12 4.2 SQL语句的索引使用13 4.3 SQL语句降低系统负荷 15 5 PL/SQL编程规范18

5.1 书写规范18 5.2 常用数据库操作语句编码规范19 5.3 常用过程控制结构20 5.4 Condition 21 5.5 Cursor 22 5.6 变量定义与赋值22 5.7 过程与函数调用23 5.8 例外处理(Exception) 23 5.9 例外处理的错误消息24 5.10 注释(Comment) 25 5.11 应用调试控制27 5.12 并发控制27 5.13 代码测试、维护29 1 概述 1.1 编写目的 为规范软件开发人员的Oracle数据库开发提供参考依据和统一标准。 1.2 文档约定 说明本文档中所用到的专用术语定义或解释,缩略词定义。 1.3 预期的读者和阅读建议 本文档适用于所有开发员。 1.4 参考文献 列出有关的参考文件,如: a.属于本项目的其他已发表文件; b.本文件中各处引用的文档资料。 列出这些文件的标题、作者,说明能够得到这些文件资料的来源。 2 数据库对象命名 2.1 命名总体原则 本规范所涉及数据库对象主要是指表、视图、同义词、索引、序列、存储过程、函数、触发器等; 命名应使用富有意义的英文词汇,尽量避免使用缩写,多个单词组成的,中间以下划线分割;避免使用Oracle的保留字或关键字,如LEVEL和TYPE; 各表之间相关列名尽量同名; 除数据库模式对象名称长度为1-8个字符,其余对象名称均要求不超过30个字符; 命名只能使用大写英文字母,数字和下划线,且以英文字母开头。 2.2 表名 规则:XXX_MMM_DDDD 说明:XXX代表子系统或模块名称(2-3个字母构成); MMM代表子模块名称(2-3个字母构成,根据实际情况可以没有); DDDD为表的简称含义,使用英文单词或词组构成,可包括下划线,但不得使用汉语拼音。 示例:PO_HEADERS_ALL 2.3 视图 规则:XXX_MMM_DDDD_V 说明:XXX代表子系统或模块名称(2-3个字母构成);

ORACLE数据库学习心得

ORACLE数据库结课论文 一个好的程序,必然联系着一个庞大的数据库网路... 今年我们学习了oracle数据库这门课程,起初的我,对这个字眼是要多陌生有多陌生,后来上课的时候听一会老师讲课,偶尔再跟上上机课,渐渐的学会了不少东西,但我感觉,我学到的仍是一些皮毛而已,怀着疑惑和求知的心态,我在网上搜索了关于oracle数据库的一些知识。 1.ORACLE的特点: 可移植性ORACLE采用C语言开发而成,故产品与硬件和操作系统具有很强的独立性。从大型机到微机上都可运行ORACLE的产品。可在UNIX、DOS、Windows等操作系统上运行。可兼容性由于采用了国际标准的数据查询语言SQL,与IBM的SQL/DS、DB2等均兼容。并提供读取其它数据库文件的间接方法。 可联结性对于不同通信协议,不同机型及不同操作系统组成的网络也可以运行ORAˉCLE数据库产品。 2.ORACLE的总体结构 (1)ORACLE的文件结构一个ORACLE数据库系统包括以下5类文件:ORACLE RDBMS的代码文件。 数据文件一个数据库可有一个或多个数据文件,每个数据文件可以存有一个或多个表、视图、索引等信息。 日志文件须有两个或两个以上,用来记录所有数据库的变化,

用于数据库的恢复。控制文件可以有备份,采用多个备份控制文件是为了防止控制文件的损坏。参数文件含有数据库例程起时所需的配置参数。 (2)ORACLE的内存结构一个ORACLE例程拥有一个系统全程区(SGA)和一组程序全程区(PGA)。 SGA(System Global Area)包括数据库缓冲区、日志缓冲区及共享区域。 PGA(Program Global Area)是每一个Server进程有一个。一个Server进程起动时,就为其分配一个PGA区,以存放数据及控制信息。 (3)ORACLE的进程结构ORACLE包括三类进程: ①用户进程用来执行用户应用程序的。 ②服务进程处理与之相连的一组用户进程的请求。 ③后台进程ORACLE为每一个数据库例程创建一组后台进程,它为所有的用户进程服务,其中包括: DBWR(Database Writer)进程,负责把已修改的数据块从数据库缓冲区写到数据库中。LGWR(Log Writer)进程,负责把日志从SGA中的缓冲区中写到日志文件中。 SMON(System Moniter)进程,该进程有规律地扫描SAG进程信息,注销失败的数据库例程,回收不再使用的内存空间。PMON (Process Moniter)进程,当一用户进程异常结束时,该进程负责恢复未完成的事务,注销失败的用户进程,释放用户进程占用的资源。

散户高手的炒股心得体会三篇

散户高手的炒股心得体会三篇炒股心得(1)---为什麽散户不会赚钱 1.炒股是资源再分配,并不创造财富. 2.开办股市就是为了圈钱,不给你一点甜头你不会进来,更不用说掏钱. 3.中国股市没有做空机制,往下做只不过是为了将来往上拉. 4.主力有远大目标,显得大智若愚.散户有小聪明,却是大愚若智. 5.人性有恐惧和贪婪,主力专找这两处攻击.散户却不承认自身有此毛病. 6.趋势理论其实非常重要,其时我们大部分时间都在等待,下跌途中空仓等待,上涨途中满仓等待,只有转势那一刻才动手买卖.均线可以帮我们判断趋势,但如果你不懂或不信它,谁也救不了你. 7.主力可以用日K线骗你,但它无法用月K线骗你,因为拆借资金玩不起时间,利息成本太高. 8.主力当然知道软件的威力,所以它会在底部或顶部区间上下震荡,使忠实反映情况的软件发出前后矛盾的信号,你抛开软件正中主力下怀.没了K线图就等于被废去双眼,你还想干啥?等你悟出月K线的奥秘,你就会爱上软件. 9.物极必反的原理非常适合炒股.如果你悟出它的真缔,你就不会再干出追高杀低的蠢事.至少你不会再冲动.KD/BOLLING都是很好的防冲动指标.

10.周密计划是主力成功的关键所在.介入价位,密集成交区,筹码分布,指标高低,时间跨度,题裁配合,意外状况,止损/止盈点……现在明白主力为什么会赚你的钱了吧? 炒股心得(2)--技术指标不是万能的,但它是股海中的救生衣. 1.不要试图去猜大盘是否见顶,况且即使大盘见顶你手中的股票仍在补涨中,你也要卖掉吗?让均线来帮我们判断(30/60都行),你手中的股票也是一样.跌破就卖掉,涨上就买回. 2.不要试图去找一根万能线来帮助我们做出买卖的决策,因为多次的买卖是庄家所希望的,但我们自己不能乱,买卖要有依据.即使事后证明是无效的买卖,只要当时有依据就行了,过分事后自责只会使自己以后的行动犹豫不决,正中庄家圈套. 3.对不同的股票不要有相同的预期,因为我们用同一种指标来侦测不同的股票,盈利效果肯定不一样,出现买卖信号就行动,不要与以前比较,否则会搞乱我们的操作思路,使我们怀疑自己的指标是否正确. 4.周线比日线准确,日线的波动是庄家使得诡计,迷恋日线说明你是菜鸟.注定你要失败.月线的使用者是大智若愚的高手. 5.相信技术指标比相信股价更重要.眼前一目了然的东西往往具有欺骗性,内在美才是你一生的追求,外表美只是水中月镜中花. 6.永远不要忘了突破后面紧跟着的是回抽,即使有个别例外.个性和共性别搞混了.回抽吸纳永远是制胜的法宝.回抽后的图形有人认为要大跌有人认为刚起步,这就是菜鸟和大侠的区别. 炒股心得(3)--如何用技术指标选股

Oracle数据库学习笔记

Oracle数据库学习笔记 作者:高达 第一天: DBMS--数据库管理系统: Date base Manage System 数据模型: (1)层次模型类似于“倒树”型的结构 (2)网状模型 (3)关系模型RDBMS--Relation Date base System 记录和记录之间通过属性之间的关系来进行连接,保证数据独立性,并形成数据集之间的关系。 主键:关键词--PRIMARY KEY 用于行的区分,不会重复。主键可以由两列组成,叫做组合键。主键非空。如果为空则失去实体完整性。 外键:关键词--FOREIGN KEY 外键表示两个表之间的相关联系。外键的范围不能超过主键的范围,如果超过则失去引用完整性。 完整性: 是为保证数据库中数据的正确性和一致性。 (1).实体完整性: 数据行不能存在重复,也不能为空。即PK不重复不为空。

(2).引用完整性: 指建立两个关系建立联系的主外键的约束 1.要求子表中的相关项必须在主表中存在。 2.如果建立了主表和子表的关系,则:a.子表中的相关项目的数据,在主表中必须存在;b.主表中相关项的数据更改了,则子表对应的数据项也应当随之更改;c.在删除子表之前,不能够删除主表。 (3).域完整性: 保证表中数据的合理性 check 检查 default 默认 not null 不为空 unique 唯一约束 (4).自定义完整性: 根据用户需要自己定义。除了上述关键字,可以使用触发器来编写约束。 约束:关键词--CONSTRAINT 在创建表的时候添加约束。 目的: 确保表中数据的完整型 常用约束类型: 主键约束(Primary Key Constraint):要求主键列数据唯一,并且不允许为空。 唯一约束(Unique Constraint):要求该列唯一,允许为空,但只能出现一个空值。 检查约束(Check Constraint):某列取值范围限制、格式限制等,如有关年龄的约束。 默认约束(Default Constraint):某列的默认值,如我们的男性学员较多,性别默认为“男”。外键约束(Foreign Key Constraint):用于两表间建立关系,需要指定引用主表的哪列。 不为空(not null):不可以为空。

北语 18春《Oracle数据库开发》

18春《Oracle数据库开发》作业_1 一、单选题( 每题4分, 共10道小题, 总分值40分) 1.在Oracle中,关于PL/SQL下列描述正确的是() A. PL/SQL代表Power Language/SQL B. PL/SQL不支持面向对象编程 C. PL/SQL块包括声明部分、可执行部分和异常处理部分 D. PL/SQL提供的四种内置数据类型是character,integer,float,boolean 答案:C 2.当需要删除表,且该表具有外键约束,需要删除表及其外键约束,可以使用如下()类型的SQL语句。 A. DROP TABLE table1 B. DROP TABLE tablel with foreign key C. DROP TABLE tablel1 CASCADE CONSTRAINTS D. DROP TABLE table1 all 答案:C 3.为了启动Oracle数据库实例,Oracle必须读取一个()文件,该文件保存了实例和数据库的配置参数列表。 A. 控制文件 B. 数据文件 C. 参数文件 D. 初始化文件 答案:C 4.()实现了JDBC ResultSet中的所有方法,但与ResultSet不同的是,OracleCachedRowSet 中的数据在Connection关闭后仍然有效。 A. OracleCachedRowSet B. OracleRowSet C. OracleSet D. CachedRowSet 答案:A 5.假设需要给某个客户表Customer的Customer_name列添加注释信息:客户姓名,可以使用如下()方式 A. COMMENT ON TABLE?CUSTOMER?IS?'客户姓名' B. COMMENT ON COLUMN CUSTOMER.CUSTOMER_NAME IS '客户姓名' C. COMMENT ON COLUMN CUSTOMER.CUSTOMER_NAME '客户姓名' D. COMMENT ON COLUMN CUSTOMER.CUSTOMER_NAME '客户姓名' 答案:B

炒股高手必须经历的阶段

高手必须经历的阶段 炒股五个阶段,即,1,无知蛮干阶段;2,进修充电阶段;3,摸索探路阶段;4,归纳成型阶段;5,初见成效阶段。 1、我入市三年后,发现我比一般股民表现四大突出的优点:刻苦,认真,钻研,求异。相信我能有实现跨进赢家大门槛的能力。 2、我在操作中,不断地要发现自我,改变自我,挑战自我,战胜自我。校正自己,永远比研究市场更重要! 3、我炒股五年后才发现,十年后才证实了炒股赚钱的指路明灯——天道酬勤。我每天在重复只做一件最简单而又最单调复杂的事情,即枯燥又无味,即寂寞无聊!只要能够坚持再坚持,忍耐再忍耐,在忍无可忍的时候,有再忍下去的毅力,始终如一不断地观察坚持记录,一天也不能遗漏,然后通过不断地归纳总结筛选,积累沉淀一定会有我意想不到的惊喜! 4、我炒股十年后,终于诞生了我的炒股总方针:追求稳定,长久,持续地获利。 5、我知道的炒股知识并不少,我在发问自己:真正做到的又有多少?能够做好的又有多少?最后要问独树一帜的你有吗?十 多年后的当时我肯定地说,有!可能是独一无二,我坚信!我坚持! 6、我炒股赚钱的工具——我的操作系统。

7、信号第一,铁的纪律。不受个人的情绪影响。它是从由战胜市场转变为顺应市场,由主动性交易转变为被动性交易,操作主要考虑在“应变”而不是在“预测”上。 8、抓住试盘,守株待兔。在常人看来这是愚蠢和原始的,但是真正让我炒股能够稳定,长久,持续地赚到钱的功夫还真是“坐功”。守株待兔关键是选择在哪些树下可以耐心等待,可能这个选择是几年来的心血结晶,心法相同技法却不同。 9、不听忽悠,眼见为实。我能要到手的铜,不要隔山的金子。 10、专家的话是两头堵,总是说如果……那么就会是……,一旦说对了就会炫耀自己看的多么准!一旦说错了他们就会说,我说过如果……那么……,现在是如果的条件没有满足,所以没有走出预想的行情是对的。我说,要是听专家的话炒股,想成为赢家我觉得简直是梦想。 11、我看图是打开图形向左看,先看月线再看周线,压缩图形看趋势,看方向不重价。 12、强势时不看阻力,弱势时不看支撑。 13、顺势加码要持股!逆势斩仓要离场! 14、我无意中发现当我赚到钱的一个规律,要想赚到钱,“必须要敢重仓”。我一般是在底部看好一只股票基本上就重仓,如果不是,顺势加码持股也就逐步达到重仓了。这样,一拨行情下来赚个20%——40%很容易。

oracle-database-11g-plsql-编程实战笔记

Chap1 DML语句是select 、insert、update、delete和merge DDL语句是create、alter、drop、rename、truncate、comment DCL语句是grant、revoke TCL语句是commit、rollback和savepoint sql16个基本命令——参考书《OCA认证考试指南(IZ0-051)》清华大学出版社 《oracle database sql language reference 11g》有非遵循格式字符串依赖于格式掩码 chap2 2.1.3 关于语句中有多个单引号时处理: 1、 select'It''s a bird,no plan can''t be 'as pharse from dual; 此处两个单引号即为一个单引号 2、只能用q 再加’(语句)’ select q'(It's a bird,no plan can't be)'as pharse from dual; 均输出 PHARSE ---------------------------- It's a bird,no plan can't be 2.1.4 定义变量与申明变量的区别: 定义变量即为变量分配名称并指定数据类型;申明变量首先需要定义变量,然后为其赋值。(赋值也称为初始化) 替代变量前面要加&前缀且若替代变量为字符型时要加两个单引号如’&a’ declare lv_whom varchar2(20);/*lv-whom为申明变量,a为替代变量,a没有变量类型*/ begin lv_whom := '&a'; end; 或者 declare lv_whom varchar2(20); begin lv_whom := &a; end;但是要在输入框中字符加两个单引号 替代变量用define申明,且定义时不可以指定类型,默认为char型 ①Define x=emp; Select * from &x; /*调用要用&,此处不加单引号,解析后即为emp表*/

北语20秋《Oracle数据库开发》作业1【标准答案】

20秋《Oracle数据库开发》作业1 试卷总分:100 得分:100 一、单选题 (共 9 道试题,共 36 分) 1.Orcacle提供了(),用于支持采用向导方式创建数据库。 A.SQL*Plus B.Oracle Net C.Oracle Listner D.Oracle Database Configuration Assistant。 答案:D 2.可以自动执行操作的存储对象是() A.程序包。 B.函数。 C.过程。 D.触发器 答案:D 3.在Oracle中,约束可以在DML语句执行之后立即生效,也可以延迟到事务处理提交时才生效。()语句可以让用户在事务处理中设置延迟约束的强制模式 A.set constraint B.set transaction C.take constraint D.take constraint 答案:A 4.Oracle的分区表可以包括多个分区,每个分区都是一个独立的(),可以存放到不同的表空间中。 A.段。 B.盘区。 C.物化视图。 D.数据文件 答案:A 5.初始化参数()指定了实例启动时希望创建的共享服务器进程的数目 A.SHARED_SERVICES。 B.DISPATCHERS。 C.HOST。 https://www.doczj.com/doc/a83434372.html,_SERVICES 答案:A 6.假设需要格式化作者表AUTHOR查询的列信息,将AUTHOR_ID列名字格式化为“作者编号”,AUTHOR_ID列名字格式化为“作者名称”,AUTHOR_DESC列名字格式化为“作者简介”,可以使用如下()方式 A.FORMAT AUTHOR_ID HEADING ’作者编号’FORMAT AUTHOR_NAME HEADING ’作者名称’FORMAT

相关主题
文本预览
相关文档 最新文档