السلام عليكم ورحمة الله وبركاتة (( رمضان كريم ))
اريد ان اعمل فحص صحة الايميل عند ادراج البيانات داخل جدول
بالبحث وجدت العديد من الشروحات باستخدام فانكشن ولكن كل الفانكشنز ترجع قيمة 0 او 1 (true - false )
الكود
ALTER FUNCTION [dbo].[validEmail]
(@email VARCHAR(255))
--Returns true if the string is a valid email address.
RETURNS bit
as
BEGIN
DECLARE @valid bit
IF @email IS NOT NULL
SET @email = LOWER(@email)
SET @valid = 0
IF @email like '[a-z,0-9,_,-]%@[a-z,0-9,_,-]%.[a-z][a-z]%'
AND @email NOT like '%@%@%'
AND CHARINDEX('.@',@email) = 0
AND CHARINDEX('..',@email) = 0
AND CHARINDEX(',',@email) = 0
AND RIGHT(@email,1) between 'a' AND 'z'
SET @valid=1
RETURN @valid
ENDثم استدعى عذى الفانكشن داخل جملة stored procedure
ALTER PROCEDURE [dbo].[vaildEmail]
@User_Name varchar(100),
@password varchar(50),
@idalaa varchar(100),
@Email varchar(100)
AS
BEGIN
INSERT INTO TBL_Users
(User_Name, password, idalaa, Email)
VALUES
(@User_Name,@password,@idalaa,dbo.isValidEmailFormat( @Email))
ENDوعند تنفيذ البروسيجدير فى عملية الادراج تكون القيمة المدرجة 1 او 0 كيف يمكن تعديل الفانكشن للتحقق من صحة الايميل مع ادارج الايميل اذا كان صحيح اما اذا كان خطأ يظهر رسالة بان الايميل غير صحيح ؟؟؟ ارجوا الافادة ولكم جزيل الشكر