Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Jak sprawdzić, czy zmienna ma wartość NULL, a następnie ustawić ją za pomocą procedury składowanej MySQL?

@last_run_time jest 9.4. Zmienne zdefiniowane przez użytkownika i last_run_time datetime jeden 13.6.4.1. Składnia zmiennej lokalnej DECLARE , to różne zmienne.

Spróbuj:SELECT last_run_time;

AKTUALIZUJ

Przykład:

/* CODE FOR DEMONSTRATION PURPOSES */
DELIMITER $$

CREATE PROCEDURE `sp_test`()
BEGIN
    DECLARE current_procedure_name CHAR(60) DEFAULT 'accounts_general';
    DECLARE last_run_time DATETIME DEFAULT NULL;
    DECLARE current_run_time DATETIME DEFAULT NOW();

    -- Define the last run time
    SET last_run_time := (SELECT MAX(runtime) FROM dynamo.runtimes WHERE procedure_name = current_procedure_name);

    -- if there is no last run time found then use yesterday as starting point
    IF(last_run_time IS NULL) THEN
        SET last_run_time := DATE_SUB(NOW(), INTERVAL 1 DAY);
    END IF;

    SELECT last_run_time;

    -- Insert variables in table2
    INSERT INTO table2 (col0, col1, col2) VALUES (current_procedure_name, last_run_time, current_run_time);
END$$

DELIMITER ;



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Czy jest to bezpieczna metoda wstawiania danych formularza do bazy danych MySQL?

  2. Jak stworzyć format json z mysql group-concat?

  3. Mysql niespójna liczba wierszy count(*) vs table.table_rows w information_schema

  4. Wstaw obraz do bazy danych za pomocą php

  5. Znajdź liczbę kolumn w tabeli