4
我想創建SQL函數,它會添加到表中的條目。在添加新用戶之前,我想檢查一下,或者此用戶不在表格中。我寫了一些代碼,但不能保存,因爲我得到的錯誤:在功能內無效使用側面影響的處理器'INSERT'。函數中包含的最後一個語句必須是返回語句。寫SQL插入函數
CREATE FUNCTION [dbo].[CreateUser]
(
@Username varchar(20),
@Password varchar(20),
@Email varchar(50),
@PasswordQuestion varchar(30),
@PasswordAnswer varchar(30)
)
RETURNS bit/* datatype */
AS
BEGIN
if (Exists(Select Username from Users where [email protected] and [email protected]))
return 1;
else
begin
INSERT INTO dbo.Users (Username, Password,
Email, UserId,
IsApproved, IsLockedOut,
IsOnline, CreationDate,
PasswordQuestion, PasswordAnswer) VALUES (@Username, @Password, @Email,
1, 0, 0, 0, GetDate(),
@PasswordQuestion, @PasswordAnswer);
return 0;
end
END
我只是SQL的初學者,所以任何建議都會很棒!
SQL函數不能修改數據庫。您需要改用存儲過程。 – RBarryYoung 2013-05-10 01:45:33