文章分类 | 推荐文章 | 最新文章 | 热点文章 | 最新软件 | 精品软件 | 下载排行 | 推荐下载 | 免费看大片 | WPS | 杀毒软件
清风网络
首 页 软件下载 网络学院 数码学院
QQ 电脑入门 游戏 操作系统 图形处理 办公软件 媒体动画 精文荟萃 工具软件 网络编程 程序开发 网络技术 认证考试 网站建设 文章专栏
当前位置:清风网络学院网络编程数据库精华:用SQL数据库批量插入数据简介
精品推荐
特别推荐
·SQL数据库完全使用手册
·进阶:精妙SQL语句介绍
·sql删除记录
·学习SQL语句之SQL语句大全
·数据备份失败的五个原因及解决办法
·解决SQL Server常见的七个经典问题
·SQL存储过程的概念,创建,调用,管理,删除,优点
·带你轻松接触13个数据库术语
·如何恢复系统数据库如何恢复系统数据库?
·通过实例讲解由浅入深学会存储过程
热点TOP10
·collate chinese_prc_ci_as null 是什么意思
·数据备份失败的五个原因及解决办法
·如何恢复系统数据库如何恢复系统数据库?
·SQL语句性能优化--LECCO SQL Expert
·数据库开发个人总结(ADO.NET小结)
·图片保存到数据库和从数据库读取图片并显示(c#)
·用独立的DLL来存储图片(资源文件)
·在DataTable中查询应该注意的问题
·解析:删除数据库中重复数据的两个方法
·判断与主表关联的外键表是否有数据引用再删除

精华:用SQL数据库批量插入数据简介

日期:2008年6月11日 作者: 查看:[大字体 中字体 小字体]


最近忙于公司BI软件性能测试,这几天主要测试CUBE采用ROLAP下,PA的并发和稳定性。涉及表和维度,立方:事实表sales_fact_1997,维度表time_by_day;立方:sales。修改内容:删除原来的TIME维度,新建TIME维度,修改SALES立方。

数据插入:

1、事实数据插入:通过DTS加调度实现将sales_fact_1997的数据进行复制。频率为每分钟10000条。主要用到的SQL语句:select top 10000 * from sales_fact_1997

2、维度数据插入:通过SQL语句插入数据到time_by_day.

测试用到的SQL语句:

1、单条插入

INSERT INTO time_by_day 

(time_id, the_date, the_year, month_of_year, quarter,day_of_month) 

VALUES ('1101', '1999-10-1', '1999', '10', 'Q4','1')

2、单条插入:

INSERT INTO time_by_day 

(time_id, the_date, the_year, month_of_year, quarter, day_of_month) 

SELECT TOP 1 time_id + 1 AS time_id, the_date + 1 AS the_date, YEAR(the_date + 1) 

AS the_year, MONTH(the_date + 1) AS month_of_year, { fn QUARTER(the_date + 1) 

} AS quarter, DAY(the_date + 1) AS day_of_month 

FROM time_by_day 

ORDER BY time_id DESC

3、循环插入:

DECLARE @MyCounter INT 

SET @MyCounter = 0            /*设置变量*/ 

WHILE (@MyCounter < 2)     /*设置循环次数*/ 

BEGIN 

WAITFOR DELAY '000:00:10'   /*延迟时间10秒*/ 

INSERT INTO time_by_day 
(time_id, the_date, the_year, month_of_year, quarter, day_of_month) 

SELECT TOP 1 time_id + 1 AS time_id, the_date + 1 AS the_date, YEAR(the_date + 1) 

AS the_year, MONTH(the_date + 1) AS month_of_year, { fn QUARTER(the_date + 1) 

} AS quarter, DAY(the_date + 1) AS day_of_month 

FROM time_by_day 

ORDER BY time_id DESC 


SET @MyCounter = @MyCounter + 1 

END

4、插入以时间为变量的数据

DECLARE @MyCounter INT 

declare @the_date datetime 

SET @MyCounter = 0 

SET @the_date = '1999-1-4' 

WHILE (@MyCounter < 200000) 

BEGIN 

WAITFOR DELAY '000:00:10' 

/*INSERT INTO time_by_day 

(time_id, the_date, the_year, month_of_year, quarter, day_of_month) 

SELECT TOP 1 time_id + 1 AS time_id, the_date + 1 AS the_date, YEAR(the_date + 1) 

AS the_year, MONTH(the_date + 1) AS month_of_year, { fn QUARTER(the_date + 1) 

} AS quarter, DAY(the_date + 1) AS day_of_month 

FROM time_by_day 

ORDER BY time_id DESC 

*/ 

insert into time_by_day (time_id,the_date)values('371',@the_date) 

SET @the_date = @the_date + 1 

SET @MyCounter = @MyCounter + 1 

END

(出处:清风网络学院






上一篇:SQL Server 2000启动1069错误解决方法

下一篇:数据库死锁导致站点访问故障解决方案

相关文章:
·女方感到十分疼痛却不能插入
·建立自由的会计日期的报表--1.4.让报表处理期初和期末之间的数据
·EasyRecovery 604硬盘数据恢复软件技巧
·Access使用查询--1.2.用选择查询进行分组数据的计算
·常用数据库比较
·SQL Server企业管理器和查询分析器简介
·外接SATA接口 硬盘数据传输速度更快
·Word文档图片插入小技巧 让后期编辑更省事
·内网数据库服务器入侵实战
·给你的数据库文件减肥
相关软件:
·《疯狂李阳英语精华》零售版
·上下五千年 中国历代帝王简介
·中国网管论坛精华电子书
·中国PHOTOSHOP联盟论坛精华
·《女友》杂志十年精华合订本
·《读者》1-200期 精华版
·SQL/MYSQL/数据库教程专栏
·批量更名专家(RenameWiz) V4.11
·一蓑烟雨论坛精华集2007①
·逐步精通数据库 sql server 视频教程

特别声明:本站除部分特别声明禁止转载的专稿外的其他文章可以自由转载,但请务必注明出处和原始作者。文章版权归文章原始作者所有。对于被本站转载文章的个人和网站,我们表示深深的谢意。如果本站转载的文章有版权问题请联系编辑人员,我们尽快予以更正。
[打印本页] [关闭窗口] 转载请注明来源:http://www.vipcn.net
| 帮助(?) | 版权声明 | 友情连接 | 关于我们 | 信息发布
Copyright 2007 www.vipcn.net All Rights Reserved. 鄂ICP备05000083号Powered by:viphot