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