比如说同时给2个表里插数据 你们看这个存储过程
CREATE PROCEDURE InsertPSex(
name varchar(20),
SID int(11),
SexOne varchar(10))
BEGIN
insert into products(name,sexid) values(name,SID)
insert into productssex(Sex) values(SexOne)
END;
就是给2个表里插数据 结果运行call InsertPSex('姓名',1,'不是人');
就会报错说incorrect number of arguments for PROCEDURE mydb.InsertPSex;expected 2,got 3。
麻烦高手给解决下谢谢!

解决方案 »

  1.   

    CREATE TABLE `products` ( 
      `Id` int(11) NOT NULL auto_increment, 
      `name` varchar(20) default NULL, 
      `sexid` int(11) NOT NULL default '0', 
      PRIMARY KEY  (`Id`), 
      KEY `SPSex` (`sexid`) 
    ) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=utf8; 第2个表 
    CREATE TABLE `productssex` ( 
      `SexId` int(11) NOT NULL auto_increment, 
      `Sex` varchar(10) default NULL, 
      PRIMARY KEY  (`SexId`) 
    ) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8; 
    就是上面这2个表
      

  2.   

    只是为了做测试 就是给第一个表里插NAME SEXID是第2个表里 男对应的1 然后在给第2个表里新加一行记录而已 麻烦高手给看看啊 谢谢了