|
John T.
Posting Yak Master
112 Posts |
Posted - 2003-04-29 : 13:11:45
|
| I am looking for criticism. I am certain it is not efficient as it can be. What better place to find out.I am sending into the sproc some values. Then I take some values from a table in the db to insert into a record in another table. Values into sproc + fields from Table1 = fields in Table2<code>Create Procedure MainInsert @cap varchar(50),@gno varchar(50),@uns varchar(50), @asel varchar(50),@os varchar(50) ASDeclare @gtime SMALLDATETIME Declare @gm varchar(50)Declare @sp varchar(50)Declare @type varchar(50)Declare @sel varchar(50)Declare @conos SMALLINT Declare @ptime SMALLDATETIME Declare @conuns SMALLINTSELECT @gtime = GTime FROM Table1 WHERE IDNum = CONVERT(SMALLINT,@gno)SELECT @gm = Vis + 'vs.' + Home FROM Table1 WHERE IDNum = CONVERT(SMALLINT,@gno)SET @ptime = GETDATE()SET @conuns = CONVERT(SMALLINT,@uns)SET @conos = CONVERT(SMALLINT, @os)IF @asel = 'V'BEGINSET @sp = 'MLB'SET @type = 'Gm'SELECT @sel = Vis FROM Table1 WHERE IDNum = CONVERT(SMALLINT,@gno)SELECT @os = Vos FROM Table1 WHERE IDNum = CONVERT(SMALLINT, @gno)ENDELSE IF @asel = 'H'BEGINSET @sp = 'MLB'SET @type = 'Gm'SELECT @sel = Home FROM Table1 WHERE IDNum = CONVERT(SMALLINT,@gno)SELECT @os = Hos FROM Table1 WHERE IDNum = CONVERT(SMALLINT, @gno)ENDELSE IF @asel = 'O'BEGINSET @sp = 'MLB'SET @type = 'T'SELECT @sel = CONVERT(varchar,Tot) FROM Table1 WHERE IDNum = CONVERT(SMALLINT,@gno)SET @sel = @sel + 'o'SELECT @os = Ov FROM Table1 WHERE IDNum = CONVERT(SMALLINT,@gno)ENDELSE IF @asel = 'U'BEGINSET @sp = 'MLB'SET @type = 'T'SELECT @sel = CONVERT(varchar,Tot) FROM Table1 WHERE IDNum = CONVERT(SMALLINT,@gno)SET @sel = @sel + 'u'SELECT @os = Un FROM Table1 WHERE IDNum = CONVERT(SMALLINT,@gno)ENDINSERT INTO Table2 (Cap,GNum,Gm,GTime,Sp,Type,Sel,Os,Uns,PTime,Asel)VALUES((@cap,@gno,@gm,@gtime,@sp,@type,@sel,@conos,@conuns,@ptime,@asel)GO</code>I know it ain't pretty. Is this spaghetti code? |
|