sql >> データベース >  >> RDS >> Sqlserver

正規表現を使用したSQLメール検証関数

    簡単に言えば、いいえ、それはできません。 LIKE の構文 は、正規表現と同じではありません (そして、それほど強力ではありません)。 T-SQL での SQL Server 正規表現<も参照してください。 /a>

    しかし、.Net にホップして、そこでマッチングを行うことができます。 VBScript.RegExp をインスタンス化できます sp_OACreate

    CREATE FUNCTION dbo.isValidEmailFormat
    (
        @Email varchar(100)
    )
    RETURNS bit
    AS
    BEGIN
        DECLARE @pattern varchar(4000)
        SET @pattern = '[a-zA-Z0-9_\-][email protected]([a-zA-Z0-9_\-]+\.)+(com|org|edu|nz|au)'
        DECLARE @Result bit
    
        DECLARE @objRegexExp INT
        EXEC sp_OACreate 'VBScript.RegExp', @objRegexExp OUT
    
        EXEC sp_OASetProperty @objRegexExp, 'Pattern', @pattern
        EXEC sp_OASetProperty @objRegexExp, 'IgnoreCase', 1
        EXEC sp_OASetProperty @objRegexExp, 'MultiLine', 0
        EXEC sp_OASetProperty @objRegexExp, 'Global', false
        EXEC sp_OASetProperty @objRegexExp, 'CultureInvariant', true
    
        EXEC sp_OAMethod @objRegexExp, 'Test', @Result OUT, @Email
    
        EXEC sp_OADestroy @objRegexExp
    
        RETURN @Result
    END
    

    正規表現メール検証エラーをのぞいてみてください- JavaScript を使用 使用できる文字の制限を少し緩和するかどうかを確認してください。



    1. 括弧内の SQL Select 値

    2. SETとSelectQueryを組み合わせて、単一のMySqlクエリで実行し、結果をpentahoに渡します。

    3. MySQLは非主キーで自動インクリメントします

    4. Magentoの販売/注文グリッドにカスタム列を追加するにはどうすればよいですか?