短信调用系统的设计和实现.doc

短信调用系统的设计和实现.doc

ID:53722114

大小:22.50 KB

页数:9页

时间:2020-04-06

短信调用系统的设计和实现.doc_第1页
短信调用系统的设计和实现.doc_第2页
短信调用系统的设计和实现.doc_第3页
短信调用系统的设计和实现.doc_第4页
短信调用系统的设计和实现.doc_第5页
资源描述:

《短信调用系统的设计和实现.doc》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、短信调用系统的设计和实现  摘要:随着公司短信业务的增加,基于数据管理人员手工调用短信数据的模式已不再适用。因此公司决定开发一套《短信调用系统》,由业务人员自己操作,方便、快捷地进行短信调用。《短信调用系统》的实施,成功地解决了公司面临的问题。  关键词:短信调用;SQL性能优化;大批量数据快速导出;快速去重  中图分类号:TP393文献标识码:A文章编号:1009-3044(2011)20-4805-03  随着公司规模的不断扩大,作为公司产品的数据的规模、信息的深度及广度也随之扩张,公司的数据库管理人员承担着日益繁重的工作。  1问题描述  短信调用原来的工作

2、方式是由短信运营人员将调用要求提交给数据管理人员,再由数据管理人员在PL/SQL中写SQL代码,将满足条件的短信数据调出,交给短信运营人员。这种工作方式所产生的问题是:  1)由于项目多,数据管理人员需要经常加班。  2)调用条件多,不规范,只要数据管理人员有一个条件漏掉,就会将数据调用条件弄错,从而产生客户投诉。  在这种背景下为了减少数据管理人员工作量,满足公司的大批量的短信项目调用需求,自主开发了短信调用系统。  2系统总体设计  系统流程如图1所示。  1)相关技术  后台数据库:Oracle10g;前台软件:Delphi6.0;体系结构:C/S;计算机语

3、言:Sql、ObjectPascal。  2)功能设置  基本信息:记录项目的基本信息,项目负责人,调用条件  运作情况:一个项目可能调几批数据,按城市或条件,记录每个批次的调条件和数量。  去重功能:与以前运作过的项目数据进行去重,以前已经发过的数据要滤掉,由于是短信数据,所以手机号是没有重复的,唯一的,自身没重复。  查询数量:确定条件,查询数据量  保存数据:查询好的数据保存到项目临时表  数据导出:项目数据导出为CSV文件,交给负责运营的人员  数据回库:将调出的数据写入到项目数据表op_smsdata_auto中  样本提取:提取已运作好的项目样本数据给

4、客户。  3)实现要点  调用条件的确定;调用小表的生成;查询数据量的函数;保存数据的存储过程;数据导出程序;写入项目数据表的存储过程。  3系统功能实现  1)后台表设计  短信调用项目表:op_projinfo(projid项目流水号,projname项目名称,projdate项目日期,principalid项目负责人ID,princalname项目负责人,princalname希望数量,deliverdesire调用条件,realsendqty实际调出数量);一次数据调用对应一个项目。  项目批次表:op_smsproj(smsprojid批次流水号,sen

5、dbatch批次序号,projid项目ID,createdate创建日期,removeproj去重ID,realcustomercount实际调用数量,transferflag导出标志);一个项目可能对应几个批次数据。  调表条件表:op_smsremark(smsremarkid记录流水号,projid项目ID,batchid调用批次序号,parameters查询参数,querystring查询SQL,demand查询要求,lastqty调出数量,removedupprojlist去重项目,fieldorrelation或关系字符串);记录每次查询和调用的条件,

6、以备查询。  项目数据表:op_smsdata(projid项目ID,customerid客户ID,mobile手机,importbatch数据批次);记录调出数据。  2)确定调用条件为基本信息,车主信息,楼盘信息三大类,具体条件如图2所示。  3)调用小表的生成  公司数据的情况是所有手机数据都在客户数据表b2c_customer中,这张表很大,有1亿多条记录,另外还有两个相关联的楼盘表b2c_building和车主表b2c_carexpens。客户表是按城市区号进行分区的,人工调取数据时会根据分区进行查询和调用,会根据条件和楼盘表、车主表连查,会做很多临时表

7、以便提高速度,减少调用时间。这三张表都会经常做增加,更新操作。根据这种情况,将客户数据表按区号生成328个调用小表,同时将车主信息整合到查询小表中,因为楼盘表数据量不大,两表连查时并不耗费时间,所以就没将楼盘表整到调用小表中。  生成调用小表的的存储过程是B2c_Query_Recreate,其功能按区号循环生成调用基础表,其关键代码如下:  executeimmediate'createtable'

8、

9、v_tablename

10、

11、'as  (select*from(selecta.customerid,marrydate,name,idcard,a.areacod

12、e,mob

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。