create procedure add_customer_info_tab
(
@param1 int,
@param2 varchar(24),
@param3 varchar(24),
@param4 varchar(24),
@param5 varchar(24),
@param6 varchar(24),
@param7 varchar(24),
@param8 varchar(24),
@param9 varchar(24),
@param10 varchar(24),
@param11 varchar(60),
@param12 varchar(1000),
)
as
delete from customer_info_tab where id=param1;
insert into customer_info_tab 
(id,name,area,profession,vocation,company,approach,email,phone,mobile,interest,memo)
values(param1,param2,param3,param4,parma5,param6,param7,param8,param9,param10,param11,param12
消息 102,级别 15,状态 1,过程 add_customer_info_tab,第 15 行
')' 附近有语法错误
看了好半天就是不知道哪出了问题,我是SQL新手,麻烦多多指导存储sql

解决方案 »

  1.   

    delete from customer_info_tab where id=@param1
      

  2.   


    delete from customer_info_tab where id=@param1;
    insert into customer_info_tab 
    (id,name,area,profession,vocation,company,approach,email,phone,mobile,interest,memo)
    values(@param1,@param2,@param3,@param4,@parma5,@param6,@param7,@param8,@param9,@param10,@param11,@param12)--少了@
      

  3.   

    create procedure add_customer_info_tab
    (
    @param1 int,
    @param2 varchar(24),
    @param3 varchar(24),
    @param4 varchar(24),
    @param5 varchar(24),
    @param6 varchar(24),
    @param7 varchar(24),
    @param8 varchar(24),
    @param9 varchar(24),
    @param10 varchar(24),
    @param11 varchar(60),
    @param12 varchar(1000),
    )
    as
    delete from customer_info_tab where id=param1;
    insert into customer_info_tab 
    (id,name,area,profession,vocation,company,approach,email,phone,mobile,interest,memo)
    values(param1,param2,param3,param4,parma5,param6,param7,param8,param9,param10,param11,param12)--少了个括号,另外这些paramxxx的前面要加@,比如@parama1
      

  4.   

    create procedure add_customer_info_tab
    (
    @param1 int,
    @param2 varchar(24),
    @param3 varchar(24),
    @param4 varchar(24),
    @param5 varchar(24),
    @param6 varchar(24),
    @param7 varchar(24),
    @param8 varchar(24),
    @param9 varchar(24),
    @param10 varchar(24),
    @param11 varchar(60),
    @param12 varchar(1000)  -->这里多了逗号
    )
    as
    set nocount on   -->加这行屏闭消息delete from customer_info_tab where id=param1;
    insert into customer_info_tab 
    (id,name,area,profession,vocation,company,approach,email,phone,mobile,interest,memo)
    values(param1,param2,param3,param4,parma5,param6,param7,param8,param9,param10,param11,param12)go
      

  5.   


    后面insert 语句的values列表里面和delete语句的where后面的param,由于是传入存储过程的参数,都是在上面定义过的,必须要加上@符号,比如@param1。另外,最后面少了一个')'右括号。
    create procedure add_customer_info_tab
    (
    @param1 int,
    @param2 varchar(24),
    @param3 varchar(24),
    @param4 varchar(24),
    @param5 varchar(24),
    @param6 varchar(24),
    @param7 varchar(24),
    @param8 varchar(24),
    @param9 varchar(24),
    @param10 varchar(24),
    @param11 varchar(60),
    @param12 varchar(1000),
    )
    as
    delete from customer_info_tab where id=@param1;
    insert into customer_info_tab 
    (id,name,area,profession,vocation,company,approach,email,phone,mobile,interest,memo)
    values(@param1,@param2,@param3,@param4,@parma5,@param6,@param7,@param8,
    @param9,@param10,@param11,@param12)
      

  6.   


    create procedure add_customer_info_tab
    (
    @param1 int,
    @param2 varchar(24),
    @param3 varchar(24),
    @param4 varchar(24),
    @param5 varchar(24),
    @param6 varchar(24),
    @param7 varchar(24),
    @param8 varchar(24),
    @param9 varchar(24),
    @param10 varchar(24),
    @param11 varchar(60),
    @param12 varchar(1000)
    )
    as
    delete from customer_info_tab where id=@param1;
    insert into customer_info_tab 
    (id,name,area,profession,vocation,company,approach,email,phone,mobile,interest,memo)
    values(@param1,@param2,@param3,@param4,@parma5,@param6,@param7,@param8,
    @param9,@param10,@param11,@param12)
      

  7.   

    都少了@create procedure add_customer_info_tab
    (
    @param1 int,
    @param2 varchar(24),
    @param3 varchar(24),
    @param4 varchar(24),
    @param5 varchar(24),
    @param6 varchar(24),
    @param7 varchar(24),
    @param8 varchar(24),
    @param9 varchar(24),
    @param10 varchar(24),
    @param11 varchar(60),
    @param12 varchar(1000)  -->这里多了逗号
    )
    as
    set nocount on   -->加这行屏闭消息delete from customer_info_tab where id=param1;
    insert into customer_info_tab 
    (id,name,area,profession,vocation,company,approach,email,phone,mobile,interest,memo)
    values(@param1,@param2,@param3,@param4,@param5,@param6,@param7,@param8,@param9,@param10,@param11,@param12) --都少了@go
      

  8.   

    加了@还错是因为你,@param12后面多了一个,   values后面的()你只有一个
      

  9.   

    create procedure add_customer_info_tab
    (
    @param1 int,
    @param2 varchar(24),
    @param3 varchar(24),
    @param4 varchar(24),
    @param5 varchar(24),
    @param6 varchar(24),
    @param7 varchar(24),
    @param8 varchar(24),
    @param9 varchar(24),
    @param10 varchar(24),
    @param11 varchar(60),
    @param12 varchar(1000)--去掉逗号
    )
    as
    delete from customer_info_tab where id=param1;--这里要加@改成id=@param1
    insert into customer_info_tab (id,name,area,profession,vocation,company,approach,email,phone,mobile,interest,memo)
    values(@param1,@param2,@param3,@param4,@parma5,@param6,@param7,@param8,@param9,@param10,@param11,@param12)--这里全部加@