仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 2355|回复: 9

[学习教程] MYSQL网页编程之有用的备份PL/SQL程序东西

[复制链接]
活着的死人 该用户已被删除
发表于 2015-1-16 22:48:52 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
下面我将描述五个不使用MySQL的响亮理由。备份|程序
/*ligang1000@hotmail.com*/



功效:用于备份以后用户所具有的一切PL/SQLobjects(包含

TYPE,TYPEBODY,PROCEDURE,FUNCTION,PACKAGE,PACKAGEBODYorJAVASOURCE)



道理:对USER_SOURCE数据字典的挪用,失掉一切的

PL/SQL代码.



利用办法举例:

1.在C盘创建目次C:EXPORT

2.将EXPORT_SOURCE.SQL和EXTRACT_SOURCE.SQL拷贝到C盘根目次.

3.上岸SQLPLUS,CONNECTSCOTT/TIGER

4.运转@C:EXPORT_SOURCE.SQL

5.实行停止,一切的SCOTT具有的PL/SQLobject的代码文件创建在C:EXPORT目次里.

后缀名.PKS暗示PACKAGE

后缀名.PKB暗示PACKAGEBODY

后缀名.SQL暗示其他OBJECTS





备注:

假如想失掉数据库中各个SCHEMA的PL/SQLobjects,只需把工具代码中的USER_SOURCE改成DBA_SOURCE,由SYSTEM

运转便可.









工具代码:

export_source.sql



SETSERVEROUTPUTONSIZE1000000

SETECHOOFFVERIFYOFFFEEDBACKOFFTRIMSPOOLONPAGES0LINES512

SETTERMOUTOFF

SETTERMOUTON



PROMPT

PROMPTPL/SQLexportutility

PROMPT

PROMPTThisutiltyexportsallofthecurrentschemasPL/SQLsourcecodeinto

PROMPTasubdirectorycalledexport.

PROMPT

PROMPTExportingcurrentuserssourcetofolder./export



SETTERMOUTOFF

SPOOLtemp_source_extract.sql

PROMPTSETECHOOFFVERIFYOFFFEEDBACKOFFTRIMSPOOLONTERMOUTOFFPAGES0LINES512



DECLARE

/*

||ThiscursorextractseachPL/SQLstoredproceduresnameandproceduretype

*/

CURSORcur_source_programs

IS

SELECTdistinctus.name,us.type,

us.name||decode(us.type,PACKAGE,.PKS,

PACKAGEBODY,.PKB,

.SQL)spool_file

FROMuser_sourceus

ORDERBYus.name,us.type;



BEGIN

FORcur_source_programs_rowINcur_source_programs

LOOP

dbms_output.put_line(spoolexport||user||_||cur_source_programs_row.spool_file);

dbms_output.put_line(@extract_source||cur_source_programs_row.name||"||cur_source_programs_row.type||");

dbms_output.put_line(spooloff);

ENDLOOP;



END;

/



SPOOLOFF

@temp_source_extract



SETFEEDBACKONVERIFYONTERMOUTON



PROMPTExportcomplete!

PROMPT 

  



Extract_source.sql:



SETHEADOFFVERIFYOFF

prompt--************************************************************************************--;

prompt--*;

prompt--*SCRIPT:&2&1;

prompt--*;

prompt--*AUTHOR:;

prompt--*;

prompt--*;

prompt--*PURPOSE:;

prompt--*;

prompt--*;

prompt--*;

prompt--*;

prompt--*;

prompt--*PARAMETERS:;

prompt--*;

prompt--*;

prompt--*DEPENDENCIES:none;

prompt--*;

prompt--*REVISIONS:;

prompt--*VerDateAuthorDescription;

prompt--*-------------------------------------------------------------------------;

prompt--*;

prompt--*;

prompt--*************************************************************************************--;





SELECTDECODE(ROWNUM,1,CREATEORREPLACE||RTRIM(RTRIM(us.text,CHR(10))),

RTRIM(RTRIM(us.text,CHR(10))))text

FROMuser_sourceus

WHEREus.name=&1

ANDus.type=&2

ORDERBYus.line;



PROMPT/

PROMPT








DBaaS系统其实具有更大的市场机遇:像其他云服务一样,DBaaS意味着更短的销售周期,更少的启动费用,持续不断的收入,也意味着比之前更多的客户。
谁可相欹 该用户已被删除
发表于 2015-1-18 07:50:48 | 显示全部楼层
习惯敲命令行的朋友可能会爽一些。但是功能有限。适合机器跑不动SQLServerManagementStudio的朋友使用。
柔情似水 该用户已被删除
发表于 2015-1-21 12:22:52 | 显示全部楼层
对于微软系列的东西除了一遍遍尝试还真没有太好的办法
灵魂腐蚀 该用户已被删除
发表于 2015-1-30 18:08:57 | 显示全部楼层
一个百万级别的基本信息表A,一个百万级别的详细记录表B,A中有个身份证id,B中也有身份id;先要找出A中在B的详细记录。
再现理想 该用户已被删除
发表于 2015-2-6 14:44:33 | 显示全部楼层
也可谈一下你是怎么优化存储过程的?
小魔女 该用户已被删除
发表于 2015-2-16 16:39:36 | 显示全部楼层
原来的计算字段其实和虚拟字段很像。只是管理方面好了而已,性能方面提高不多。但是SQL2005提供了计算字段的持久化,这就提高了查询的性能,但是会加重insert和update的负担。OLTP慎用。OLAP可以大规模使用。
只想知道 该用户已被删除
发表于 2015-3-5 07:08:08 | 显示全部楼层
在select语句中可以使用groupby子句将行划分成较小的组,然后,使用聚组函数返回每一个组的汇总信息,另外,可以使用having子句限制返回的结果集。
若相依 该用户已被删除
发表于 2015-3-12 00:00:45 | 显示全部楼层
从底层原理到表层引用,书籍多的很。个人认为没有什么那本书好?这样的说法。主要看和个人的学习方法是否适合。
山那边是海 该用户已被删除
发表于 2015-3-19 16:49:13 | 显示全部楼层
代替了原来VB式的错误判断。比Oracle高级不少。
愤怒的大鸟 该用户已被删除
发表于 2015-3-29 08:53:41 | 显示全部楼层
分区表是个亮点!从分区表也能看出微软要做大作强SQLServer的信心。资料很多,这里不详细说。但是重点了解的是:现在的SQLServer2005的表,都是默认为分区表的。因为它要支持滑动窗口的这个特性。这种特性对历史数据和实时数据的处理是很有帮助的。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-3-29 00:28

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表