Drop files here

SQL upload ( 0 ) x -

Page-related settings Click on the bar to scroll to top of page
Press Ctrl+Enter to execute query Press Enter to execute query
ascending
descending
Order:
Debug SQL
Count
Execution order
Time taken
Order by:
Group queries
Ungroup queries
Collapse Expand Show trace Hide trace Count : Time taken :
Bookmarks
Refresh
Add
No bookmarks
Add bookmark
Options
Set default





Collapse Expand Requery Edit Explain Profiling Bookmark Query failed Database : Queried time :
Browse mode
Customize browse mode.
Browse mode
Documentation Use only icons, only text or both. Restore default value
Documentation Use only icons, only text or both. Restore default value
Documentation Whether a user should be displayed a "show all (rows)" button. Restore default value
Documentation Number of rows displayed when browsing a result set. If the result set contains more rows, "Previous" and "Next" links will be shown. Restore default value
Documentation SMART - i.e. descending order for columns of type TIME, DATE, DATETIME and TIMESTAMP, ascending order otherwise. Restore default value
Documentation Highlight row pointed by the mouse cursor. Restore default value
Documentation Highlight selected rows. Restore default value
Documentation Restore default value
Documentation Restore default value
Documentation Repeat the headers every X cells, 0 deactivates this feature. Restore default value
Documentation Maximum number of characters shown in any non-numeric column on browse view. Restore default value
Documentation These are Edit, Copy and Delete links. Restore default value
Documentation Whether to show row links even in the absence of a unique key. Restore default value
Documentation Default sort order for tables with a primary key. Restore default value
Documentation When browsing tables, the sorting of each table is remembered. Restore default value
Documentation For display Options Restore default value
SELECT * FROM `proc` ORDER BY `param_list` DESC 
Edit inline ] [ Edit ] [ Explain SQL ] [ Create PHP code ] [ Refresh ]
Full texts db name type specific_name language sql_data_access is_deterministic security_type param_list Descending Ascending 1 returns body definer created modified sql_mode comment character_set_client collation_connection db_collation body_utf8 aggregate
Edit Edit Copy Copy Delete Delete
DELETE FROM proc WHERE `proc`.`db` = 'test' AND `proc`.`name` = 'GetNextSubmissionCode' AND `proc`.`type` = 'FUNCTION'
test GetNextSubmissionCode FUNCTION GetNextSubmissionCode SQL READS_SQL_DATA YES DEFINER
`p_main_category_code` INT, `p_sub_category_code` INT
varchar(20) CHARSET utf8mb4 COLLATE utf8mb4_unicode_ci
BEGIN
    DECLARE next_serial INT DEFAULT 1;
    DECLARE submission_code VARCHAR(20);
    DECLARE category_pattern VARCHAR(10);
    
    SET category_pattern = CONCAT(p_main_category_code, '-', p_sub_category_code, '-%');
    
    SELECT COALESCE(MAX(CAST(SUBSTRING_INDEX(Submission_code, '-', -1) AS UNSIGNED)), 0) + 1
    INTO next_serial
    FROM reviewcontent 
    WHERE Submission_code LIKE category_pattern
    AND YEAR(SubmissionDate) = YEAR(NOW());
    
    SET submission_code = CONCAT(p_main_category_code, '-', p_sub_category_code, '-', LPAD(next_serial, 3, '0'));
    
    RETURN submission_code;
END
root@localhost 2025-07-10 16:23:08 2025-07-10 16:23:08 NO_AUTO_VALUE_ON_ZERO utf8mb4 utf8mb4_general_ci utf8mb4_general_ci
BEGIN
    DECLARE next_serial INT DEFAULT 1;
    DECLARE submission_code VARCHAR(20);
    DECLARE category_pattern VARCHAR(10);
    
    SET category_pattern = CONCAT(p_main_category_code, '-', p_sub_category_code, '-%');
    
    SELECT COALESCE(MAX(CAST(SUBSTRING_INDEX(Submission_code, '-', -1) AS UNSIGNED)), 0) + 1
    INTO next_serial
    FROM reviewcontent 
    WHERE Submission_code LIKE category_pattern
    AND YEAR(SubmissionDate) = YEAR(NOW());
    
    SET submission_code = CONCAT(p_main_category_code, '-', p_sub_category_code, '-', LPAD(next_serial, 3, '0'));
    
    RETURN submission_code;
END
NONE
Edit Edit Copy Copy Delete Delete
DELETE FROM proc WHERE `proc`.`db` = 'test' AND `proc`.`name` = 'GenerateSecurityReport' AND `proc`.`type` = 'PROCEDURE'
test GenerateSecurityReport PROCEDURE GenerateSecurityReport SQL CONTAINS_SQL NO DEFINER
IN `days_back` INT
BEGIN
    DECLARE EXIT HANDLER FOR SQLEXCEPTION
    BEGIN
        ROLLBACK;
        RESIGNAL;
    END;
    
    SELECT 
        'Login Statistics' as report_section,
        COUNT(*) as total_attempts,
        SUM(CASE WHEN status = 'SUCCESS' THEN 1 ELSE 0 END) as successful_logins,
        SUM(CASE WHEN status LIKE 'FAILED%' THEN 1 ELSE 0 END) as failed_attempts,
        COUNT(DISTINCT ip_address) as unique_ips
    FROM login_attempts 
    WHERE attempt_time >= DATE_SUB(NOW(), INTERVAL days_back DAY)
    
    UNION ALL
    
    SELECT 
        'Security Events' as report_section,
        COUNT(*) as total_events,
        SUM(CASE WHEN severity = 'HIGH' OR severity = 'CRITICAL' THEN 1 ELSE 0 END) as critical_events,
        SUM(CASE WHEN resolved = 0 THEN 1 ELSE 0 END) as unresolved_events,
        COUNT(DISTINCT source_ip) as unique_source_ips
    FROM security_events 
    WHERE event_time >= DATE_SUB(NOW(), INTERVAL days_back DAY);
END
root@localhost 2025-07-10 16:23:08 2025-07-10 16:23:08 NO_AUTO_VALUE_ON_ZERO utf8mb4 utf8mb4_general_ci utf8mb4_general_ci
BEGIN
    DECLARE EXIT HANDLER FOR SQLEXCEPTION
    BEGIN
        ROLLBACK;
        RESIGNAL;
    END;
    
    SELECT 
        'Login Statistics' as report_section,
        COUNT(*) as total_attempts,
        SUM(CASE WHEN status = 'SUCCESS' THEN 1 ELSE 0 END) as successful_logins,
        SUM(CASE WHEN status LIKE 'FAILED%' THEN 1 ELSE 0 END) as failed_attempts,
        COUNT(DISTINCT ip_address) as unique_ips
    FROM login_attempts 
    WHERE attempt_time >= DATE_SUB(NOW(), INTERVAL days_back DAY)
    
    UNION ALL
    
    SELECT 
        'Security Events' as report_section,
        COUNT(*) as total_events,
        SUM(CASE WHEN severity = 'HIGH' OR severity = 'CRITICAL' THEN 1 ELSE 0 END) as critical_events,
        SUM(CASE WHEN resolved = 0 THEN 1 ELSE 0 END) as unresolved_events,
        COUNT(DISTINCT source_ip) as unique_source_ips
    FROM security_events 
    WHERE event_time >= DATE_SUB(NOW(), INTERVAL days_back DAY);
END
NONE
With selected: With selected:
Query results operations Copy to clipboard Copy to clipboard Export Export Display chart Display chart Create view Create view
Bookmark this SQL query Bookmark this SQL query