Employees(Id int,  Name  nvarchar(50),Gender bit,Address nvarchar(200),Tel nvarchar(50))

解决方案 »

  1.   

    create proc p_test
    @Id int,  
    @Name  nvarchar(50),
    @Gender bit,
    @Address nvarchar(200),
    @Tel nvarchar(50)
    AS
    INSERT Employees
      VALUES(@Id,@Name,@Gender,@Address,@Tel )
    GO
      

  2.   

    create procedure my_Employees as
    begin
      update my_Employees set Address = (case when Name = '张三' then '...' 
      when name = '李四' then '....' when name = '王五' then '...'  else ....end)
    end
      

  3.   


    CREATE PROCEDURE up_emp
    @Id int,  
    @Name  nvarchar(50),
    @Gender bit,
    @Address nvarchar(200),
    @Tel nvarchar(50),
    @type int
    AS
    begin
    if @type =1 --insertINSERT Employees
      VALUES(@Id,@Name,@Gender,@Address,@Tel )
    if  @type =2 --update
    update Employees 
    set Name=@Name,
    Gender=@Gender,
    Address=@Address,
    Tel=@Tel
    where Id=@id
    if  @type =3 --delete
    delete from Employees where  Id=@id
    if  @type =4 --select
    select * from Employees where  Id=@id
    if  @type =5 --....
    select * from Employees
    end
      

  4.   

    写个够长的,最长也就这么长了:
    insert into Employees 
    select 1,2,3,4,5
    union
    select 1,2,3,4,5
    union
    ....
    省略无穷大行,写到sql语句大小上限或者内存放不下为止
    ...
    union
    select 1,2,3,4,5这个带走.
      

  5.   

    同学为何这样折磨自己呢,我们只追求代码越简练效率最高最好,奇人;
    在里面多加if else ,可以批量搞的,用代码一行行写,不用循环,可以把代码搞的很长很臭,呵呵,这,我真的写不出
      

  6.   

    if ddd
       begin
          select .... 
           if @dd<>@bb
                else
                   if 
                      else
                         .................
       end