Saturday, 29 December 2018

Dynamically Max Value Found to Any Table With Criteria

DECLARE
@FIELDNAME VARCHAR(50)='',
@TABLENAME VARCHAR(50)='',
@WHERECLAUSE VARCHAR(MAX)=''
AS
BEGIN


    DECLARE @RESULT VARCHAR(MAX)=''
IF @WHERECLAUSE <> ''
BEGIN    
SET @RESULT ='SELECT MAX(' + @FIELDNAME + ') FROM ' + @TABLENAME + ' WITH(NOLOCK)  WHERE '+ @WHERECLAUSE
END
ELSE
    BEGIN
        SET @RESULT ='SELECT MAX(' + @FIELDNAME + ') FROM ' + @TABLENAME + ' WITH(NOLOCK)'
    END
EXEC (@RESULT)
END

How can i find the last modified date modified user of an stored procedure in SQL Sever

DECLARE
@FILENAME VARCHAR(255) 
AS
BEGIN

SELECT @FILENAME = SUBSTRING(path, 0, LEN(path)-CHARINDEX('\', REVERSE(path))+1) + '\Log.trc'  
FROM sys.traces   
WHERE is_default = 1;  

SELECT gt.HostName, 
   gt.ApplicationName, 
   gt.NTUserName, 
   gt.NTDomainName, 
   gt.LoginName, 
   gt.SPID, 
   gt.EventClass, 
   te.Name AS EventName,
   gt.EventSubClass,      
   gt.TEXTData, 
   gt.StartTime, 
   gt.EndTime, 
   gt.ObjectName, 
   gt.DatabaseName, 
   gt.FileName, 
   gt.IsSystem
FROM [fn_trace_gettable](@FILENAME, DEFAULT) gt 
JOIN sys.trace_events te ON gt.EventClass = te.trace_event_id 
WHERE EventClass in (164)  
ORDER BY StartTime DESC;
END

Row Count of all tables in a database

BEGIN
CREATE TABLE #counts
(
table_name varchar(255),
row_count int
)

EXEC sp_MSForEachTable @command1='INSERT #counts (table_name, row_count) SELECT ''?'', COUNT(*) FROM ?'
SELECT table_name, row_count FROM #counts ORDER BY     row_count DESC
DROP TABLE #counts
END

Update First Multiple Character In SQL Server

BEGIN
UPDATE dbo.TABLENAME
SET FORM_CODE = 'M11' + SUBSTRING(form_code,4,3)
WHERE LEFT(FORM_CODE,3) = 'M10'  
END

How do I find a value anywhere in a SQL Server Database

DECLARE
@SearchStr nvarchar(100)='ANYVALUE'
BEGIN
-
DECLARE @Results TABLE(CTableName VARCHAR(max),ColumnName nvarchar(370), ColumnValue nvarchar(3630))

SET NOCOUNT ON

DECLARE @TableName nvarchar(256), @ColumnName nvarchar(128), @SearchStr2 nvarchar(110)
SET @TableName = ''
SET @SearchStr2 = QUOTENAME('%' + @SearchStr + '%','''')

WHILE @TableName IS NOT NULL
BEGIN
    SET @ColumnName = ''
    SET @TableName = 
    (
        SELECT MIN(QUOTENAME(TABLE_SCHEMA) + '.' + QUOTENAME(TABLE_NAME))
        FROM    INFORMATION_SCHEMA.TABLES
        WHERE       TABLE_TYPE = 'BASE TABLE'
            AND QUOTENAME(TABLE_SCHEMA) + '.' + QUOTENAME(TABLE_NAME) > @TableName
            AND OBJECTPROPERTY(OBJECT_ID(QUOTENAME(TABLE_SCHEMA) + '.' + QUOTENAME(TABLE_NAME)), 'IsMSShipped') = 0
    )

    WHILE (@TableName IS NOT NULL) AND (@ColumnName IS NOT NULL)
    BEGIN
        SET @ColumnName =
        (
            SELECT MIN(QUOTENAME(COLUMN_NAME))
            FROM    INFORMATION_SCHEMA.COLUMNS
            WHERE       TABLE_SCHEMA    = PARSENAME(@TableName, 2)
                AND TABLE_NAME  = PARSENAME(@TableName, 1)
                AND DATA_TYPE IN ('char', 'varchar', 'nchar', 'nvarchar')
                AND QUOTENAME(COLUMN_NAME) > @ColumnName
        )

        IF @ColumnName IS NOT NULL
        BEGIN
            INSERT INTO @Results
            EXEC
            (
                'SELECT ''' + @TableName +''',''' + @ColumnName + ''', LEFT(' + @ColumnName + ', 3630)
FROM ' + @TableName + ' (NOLOCK) ' +
                ' WHERE ' + @ColumnName + ' LIKE ' + @SearchStr2
            )
        END
    END 
END

SELECT CTableName,ColumnName, ColumnValue,
'SELECT ' + ColumnName + ' FROM ' + CTableName + ' WHERE ' + ColumnName + ' = ' +''''+ ColumnValue+'''' AS CopyString , COUNT(*) 'No Of Rows'
FROM @Results
GROUP BY CTableName,ColumnName,ColumnValue
END

Sunday, 11 November 2018

Get The List of columns in a particular table in SQL Server

SELECT 
    c.name 'Column Name',
    t.Name 'Data type',
    c.max_length 'Max Length',
    c.precision ,
    c.scale ,
    c.is_nullable,
    ISNULL(i.is_primary_key, 0) 'Primary Key'
FROM    
    sys.columns c
INNER JOIN sys.types t ON c.user_type_id = t.user_type_id
LEFT OUTER JOIN sys.index_columns ic ON ic.object_id = c.object_id
                   AND ic.column_id = c.column_id
LEFT OUTER JOIN sys.indexes i ON ic.object_id = i.object_id 
                   AND ic.index_id = i.index_id
WHERE c.object_id = OBJECT_ID('TABLENAME')

Thursday, 8 November 2018

Verify that Strings Are in Valid Email Format

 public static bool isEmail(string pStrInputEmail)
 {
            string strRegex = @"^([a-zA-Z0-9_\-\.]+)@((\[[0-9]{1,3}" +
                @"\.[0-9]{1,3}\.[0-9]{1,3}\.)|(([a-zA-Z0-9\-]+\" +
                @".)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\]?)$";

            Regex re = new Regex(strRegex);
            if (re.IsMatch(pStrInputEmail))
            {
                return (true);
            }
            else
            {
                return (false);
            }
}