首页 新闻 赞助 找找看

关于SQL的一个问题,高手们,来吧,跪求,我是菜鸟,数据库不常用.........

0
悬赏园豆:50 [待解决问题]

关于SQL 复制表后,见图:

 

 

把template表中的template_name,file_code插入到 folder表中 

template_id      name                parentid       file_code

66                    ttttt                    0              

67                    4444                  66

68                    77777                67

 插入到 folder表中图为:

folder_id,       folder_name,               parent_id,             file_code

1200                tttt                              0

1201                4444                         1200

1202                 7777                        1201

 

储过程写到这里了,关键部分的存储没写,高手请看一下补充完整,谢谢,是在不知道怎么弄。

ALTER PROCEDURE [dbo].[sp_DocumentTemplateCopy]
(
    @CompanyCode varchar(100),         -- 创建的文件夹跟目录
    @TemplateType varchar(100),        -- 输入要复制的模板类型
    @CreateUserName varchar(50),        -- 创建用户名
    @FiledValue int output
)
AS
begin

    IF(ISNULL(@CompanyCode,'') <> '')
        begin

            declare @sql nvarchar(500);
            set @sql='set @num= (SELECT count(1) FROM [tbl_document_folder] WHERE folder_name ='''+ @CompanyCode +''' AND parent_id =0)';
            EXECUTE sp_executesql @sql ,N'@num INT output',@FiledValue OUTPUT
            if((@FiledValue=0) and ISNULL(@TemplateType,'') <> '')
            begin


                    create table #temp
                    (
                         template_id INT,
                         template_type nvarchar(100),
                         template_name nvarchar(100),
                         parent_id INT,
                         file_code nvarchar(100),
                         sort_id INT
                   );
 
                     insert into #temp    (template_id,template_type,template_name,parent_id,file_code,sort_id)
                    exec sp_Doc_DocTemplateTree @TemplateType;

   

           //现在临时表就为 上图中的template 表,上图中的template是经过存储过程处理后的表,然后新建临时表存储结果,然后把结果插入到folder表,如图那样,小弟sql时间不长,很多东西都不太用,求指教        

     --********************************************************

         补充部分代码

     --********************************************************
     

                    drop table #temp
            end
     end

end

blue_sky_alf的主页 blue_sky_alf | 初学一级 | 园豆:72
提问于:2012-05-22 11:33
< >
分享
所有回答(2)
0

这么多人,怎么就每一个回答的呢,高手到潜水了?我对数据库不熟悉.....各位大侠,给个方案吧~!跪拜.........

blue_sky_alf | 园豆:72 (初学一级) | 2012-05-22 15:25
0

 你都写出来了,你想问什么?

哇~怪兽 | 园豆:622 (小虾三级) | 2012-05-22 17:11

谢谢各位已经解决了,使用数据库键值对(临时表),哈哈,用一个临时表当做程序里面的键值对一样使用,马上就出来了........前天是思路不开阔,谢谢各位~!

支持(0) 反对(0) blue_sky_alf | 园豆:72 (初学一级) | 2012-05-24 15:30
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册