zhyiwww
          用平實的筆,記錄編程路上的點點滴滴………
          posts - 536,comments - 394,trackbacks - 0
          聲明:本文為作者原創,轉載者必須注明。?
          ?作者:曾進 (qq:310575)?
          ?最近忙于公司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



          |----------------------------------------------------------------------------------------|
                                     版權聲明  版權所有 @zhyiwww
                      引用請注明來源 http://www.aygfsteel.com/zhyiwww   
          |----------------------------------------------------------------------------------------|
          posted on 2006-06-01 11:32 zhyiwww 閱讀(380) 評論(0)  編輯  收藏 所屬分類: database
          主站蜘蛛池模板: 秭归县| 年辖:市辖区| 高阳县| 呼玛县| 邯郸市| 轮台县| 团风县| 电白县| 乌鲁木齐市| 胶南市| 邯郸市| 长岭县| 分宜县| 娄底市| 垫江县| 红原县| 紫阳县| 济源市| 肥东县| 左云县| 高碑店市| 读书| 富川| 郧西县| 鸡西市| 广元市| 枣阳市| 阿勒泰市| 云和县| 四川省| 江华| 呼和浩特市| 黄陵县| 鄂伦春自治旗| 昌都县| 二连浩特市| 邵阳市| 柳州市| 上林县| 通许县| 麟游县|