| Author |
Topic |
|
skillile
Posting Yak Master
208 Posts |
Posted - 2001-11-26 : 12:30:18
|
| Ok my concept (I think is simple) but somewhere my syntax on the if..begin...else..endis messed up. I want to first check for the type then do the insert pending. I willput transactions on it later but it always executes the first insert. Any help wouldbe appreciated.ALTER PROCEDURE s_mgm_user_add(@task int,@oid int,@moid int,@utype int,@fname varchar(20),@lname varchar(20),@email varchar(50),@login varchar(10),@pword varchar(10),@moduser varchar(30),@modip varchar(30),@oidr int output)asSET NOCOUNT ONDECLARE @recid int --user for identity--check in customer tableif @utype = 1 beginif exists (SELECT fname from tblusercust where lower(fname) LIKE lower(@fname) AND lower(lname) LIKE lower(@lname) )RETURN 0else insert into tbllogin (login, utype, pword, moduser, modip) values (@login, @utype, @pword, @moduser, @modip) SET @recid = @@identity insert into tblusercust (moid, coid, lid, fname, lname, moduser, modip) values(@moid, @oid, @recid, @fname, @lname, @moduser, @modip) SET @oidr=@@identity RETURN 1end--check in company tableif @utype = 4 beginif exists (SELECT fname, lname, email from tblusermet where lower(fname) LIKE lower(@fname) AND lower(lname) LIKE lower(@lname) ) RETURN 0else insert into tbllogin (login, utype, pword, moduser, modip) values (@login, @utype, @pword, @moduser, @modip) SET @recid = @@identity insert into tblusermet (moid, lid, fname, lname, moduser, modip) values(@oid, @recid, @fname, @lname, @moduser, @modip) SET @oidr=@@identity RETURN 1endslow down to move faster... |
|
|
andre
Constraint Violating Yak Guru
259 Posts |
Posted - 2001-11-26 : 12:44:04
|
Try this:SET NOCOUNT ONDECLARE @recid int --user for identity--check in customer tableIF @utype = 1 BEGIN IF exists (SELECT fname from tblusercust where lower(fname) LIKE lower(@fname) AND lower(lname) LIKE lower(@lname) ) BEGIN RETURN 0 END ELSE BEGIN insert into tbllogin (login, utype, pword, moduser, modip) values (@login, @utype, @pword, @moduser, @modip) SET @recid = @@identity insert into tblusercust (moid, coid, lid, fname, lname, moduser, modip) values(@moid, @oid, @recid, @fname, @lname, @moduser, @modip) SET @oidr=@@identity RETURN 1 ENDEND--check in company tableIF @utype = 4 BEGIN IF exists (SELECT fname, lname, email from tblusermet where lower(fname) LIKE lower(@fname) AND lower(lname) LIKE lower(@lname) ) BEGIN RETURN 0 END ELSE BEGIN insert into tbllogin (login, utype, pword, moduser, modip) values (@login, @utype, @pword, @moduser, @modip) SET @recid = @@identity insert into tblusermet (moid, lid, fname, lname, moduser, modip) values(@oid, @recid, @fname, @lname, @moduser, @modip) SET @oidr=@@identity RETURN 1 ENDEND |
 |
|
|
skillile
Posting Yak Master
208 Posts |
Posted - 2001-11-26 : 13:07:37
|
| worked great thanksslow down to move faster... |
 |
|
|
|
|
|