存储过程中有几个地方看不懂!请教
create   proc   demo 
       @czydm   char(4),                                                    
       @czymm   varchar(20),                               
       @ksrq            char(8), 
       @jsrq            char(8), 
       @bmdm            char(2), 
       @xmdm            varchar(255), 
       @yybdm         varchar(255), 
       @nbzjzh      varchar(255)   
       with   encryption   as--是什么意思?   
       set   nocount   on   
       select   errorcode   =   0,   errormsg   =    '测试成功 '   
       select   *,   1   as   js 
                      from   table(@p_f_czydm,   @p_bmdm,   @p_yybdm,   @p_xmdm,   @p_nbzjzh)--为什么能在表名后面加参数?   
 请教!   
------解决方案--------------------ENCRYPTION 表示 SQL Server 加密 syscomments 表中包含 CREATE PROCEDURE 语句文本的条目。使用 ENCRYPTION 可防止将过程作为 SQL Server 复制的一部分发布。 
 WITH ENCRYPTION 子句对用户隐藏存储过程的文本。
------解决方案--------------------with encryption 
 说简单点就是给这个存储过程加密 
 加密以后谁都不能查看里面的内容了 
 包括创建的那个人 
 但是可以修改   
 table(@p_f_czydm, @p_bmdm, @p_yybdm, @p_xmdm, @p_nbzjzh) 
 ------------------------------ 
 这是谁写的存储过程?   
 这个table应该是一个表值函数,这个函数需要5个参数,并且返回一个表 
 table是函数名 ,   
 我猜的