|
Execute the following
T-SQL script in Query Editor to create and apply an addition drills stored procedure:
USE AdventureWorks
GO
-- SQL Server stored procedure
-- T-SQL while
-- SQL random function
CREATE PROC sprocMathTrainerAddition(
@DrillNumber INT,
@Level INT,
@Result BIT)
AS
BEGIN
DECLARE @Counter SMALLINT
DECLARE @Drill TABLE(
SEQUENCE INT,
[Left] INT,
[Right] INT,
Result VARCHAR(15)
)
SET @Counter = 1
WHILE @Counter <= @DrillNumber
BEGIN
INSERT @Drill
SELECT @Counter,
@Level * RAND(),
@Level * RAND(),
''
SET @Counter = @Counter + 1
END
SELECT convert(VARCHAR,SEQUENCE) + '. ' + convert(VARCHAR,[Left]) +
' + ' + convert(VARCHAR,[Right]) + ' = '
FROM @Drill
IF @Result = 1
BEGIN
UPDATE @Drill
SET Result = convert(VARCHAR,([Left] + [Right]))
SELECT convert(VARCHAR,SEQUENCE) + '. ' + convert(VARCHAR,[Left]) +
' + ' + convert(VARCHAR,[Right]) + ' = ' + Result
FROM @Drill
END
END
GO
EXEC sprocMathTrainerAddition
60 ,
30 ,
1
GO
/* Partial results
1. 18 + 18 =
2. 1 + 19 =
3. 20 + 0 =
4. 14 + 11 =
5. 15 + 11 =
6. 29 + 17 =
7. 3 + 26 =
8. 12 + 18 =
*/ |