sql >> Databasteknik >  >> RDS >> Mysql

Att göra en rad inaktiv i MySQL

Du kan byta namn på den aktuella tabellen, skapa kolumnen 'borttagen' i den och sedan skapa en vy med samma namn som den aktuella tabellen, och välja alla där raderad=0. På så sätt behöver du inte ändra alla dina frågor. Vyn kommer att kunna uppdateras förutsatt att du anger en standard för raderingskolumnen.__

CREATE TABLE my_new_table (col1    INTEGER,
                           col2    INTEGER,
                           col3    INTEGER,
                           deleted INTEGER NOT NULL DEFAULT 0);

INSERT INTO my_new_table (col1, col2, col3)
    SELECT (col1, col2, col3)
        FROM my_table;

DROP TABLE my_table;

CREATE VIEW my_table (col1, col2, col3)
    AS SELECT (col1, col2, col3)
           FROM my_new_table
           WHERE deleted = 0;


  1. Hur delar man upp namnsträngen i mysql?

  2. Oracle 11g - Unpivot

  3. Hur räknar man rader från två tabeller i en fråga?

  4. SQL MIN() för nybörjare