c) 销售订单表:saleorder
i. 销售日期:saleday 日期
ii. 销售人员:saler 三位数字
iii. 销售编号:id十一位字符(规则:前8位为yyyymmdd后三位为当天销售顺序号,如:20090813001)d) 销售订单明细表:saleorderItem
i. 销售编号: 外键:saleorder表ID
ii. 销售产品:外键product表id
iii. 单价:price 8位整数两位小数
iv. 数量:amount 10位整数两位小数
v. 金额:money 15位整数两位小数e) 商品表:product
i. 产品ID:id
ii. 产品名称:name
iii. 产品规格型号:model
要求:
a) 20000个以上销售订单(日期可以重复的,年份至少出现三个年份,销售人员从员工表中选择3至7个人作案例,数量和单位不能为0或空,金额等于数量乘以单价)
b) 商品数量在100个以上。不知道如何添加进去,麻烦给个详细的答案 用存储过程做
谢了!!!

解决方案 »

  1.   

    一定要用存储过程吗
    10g以上版本用一个语句就可以实现insert into saleorder
    select to_date('2009-01-01 00:00:00','YYYY-MM-DD HH24:MI:SS')+round(rownum/100,2) saleday,
          case when mod(rownum,5)=1 then 123 when  mod(rownum,5)=2 then 124  when  mod(rownum,5)=3 then 125 
          when  mod(rownum,5)=4 then 125 else 126 end saler,
          to_char(to_date('20090101','YYYYMMDD')+round(rownum/100),'YYYYMMDD')||to_char(mod(rownum,100),'000') seq from dual          
                  connect by rownum<=20000