2016-08-15 72 views
0

我有一個相當簡單,基本的新手問題。我想在輸入時驗證電子郵件地址,所以我創建了一個dbo.udf_ValidateEmail標量函數(通過從更好的思想中複製),但不知道如何或在哪裏調用該函數。在SQL Server中調用電子郵件有效性功能

理想情況下,我想使用默認值或綁定屬性,類似於我如何使用內置(getdate())函數來自動填充InsertDate字段,但我不確定這是否是正確的方式來完成如果這是正確的方式,那麼預期的驗證或甚至適當的語法。

函數聲明:udf_ValidateEmail(@email VARCHAR(255))

可能有人請告訴我在哪裏以及如何調用電子郵件驗證功能?我尤其掛斷瞭如何將電子郵件字段輸入參數傳遞給函數的語法。我已經進行了大量的搜索,並且發現了關於這個特定電子郵件驗證主題的大量討論,但實際的解決方案在哪裏以及如何解決。 TIA。

編輯如果<

我道歉,我起初並沒有提供足夠的信息。希望這有助於。

我想調用此函數來驗證正確的電子郵件地址條目。

ALTER FUNCTION [DBO]。[udf_ValidateEmail](@email VARCHAR(255))

RETURNS位 AS 開始 返回 ( 選擇 案例 當@Email是空值,則0 --null電子郵件無效 charindex('',@email)<> 0或 - 檢查無效字符 charindex('/',@email)<> 0或 - 檢查無效字符 charindex(':' @email)<> 0或 - 檢查無效字符如果len(@Email)-1 < = charindex('。',@Email),則0 - 檢查'%'是否爲0,然後0 - 檢查無效字符 ._'在字符串末尾 @Email like'%@%@%'或 @Email不像'%@%.%',然後0 - 檢查重複@或無效格式 其他1 END ) 結束

我想調用如果從列屬性的默認值或綁定屬性。那有意義嗎?如果不是,我應該從哪裏調用它?

+0

該功能有什麼作用?它返回什麼?你需要在這裏給我們一些信息。現在,它甚至沒有提出完整的問題。 –

+0

如果要驗證用戶輸入,可以嘗試查看AJAX並創建一個單獨的aspx文件來驗證 – ytpillai

+0

如果添加所涉及的所有技術,它可能會幫助您獲得更多的回覆。 –

回答

0

SQL沒有內置數據輸入模塊。通常情況下,INSERT語句會自然地或在第三方代碼(如.Net或PHP)調用的存儲過程中添加數據。

+0

好的,然後我會嘗試使用前端應用程序代碼而不是數據庫級別完成。我希望避免Windows VB應用程序和Web應用程序之間的冗餘。我想我可以在輸入時原生地調用函數,但不要猜測。 – Thad

+0

您可以在存儲過程中調用您的函數來插入數據,並在錯誤代碼無效時返回錯誤代碼。然後,您可以在您的VB和Web應用程序中使用相同的SP。 – nergfurtz