sql >> Databáze >  >> RDS >> Mysql

CREATE TABLE as SELECT - pomocí MEMORY ENGINE (v paměti RAM)

  • Ano, lze to provést, ale ne pomocí jednoduché syntaxe CREATE TABLE t AS SELECT ... - budete muset zadat sloupce tabulky v úplném prohlášení , Ukázka:

    CREATE TABLE t (col1 INT(11), col2 INT(11)) 
    ENGINE=MEMORY 
    AS 
    SELECT * FROM another_t
    
  • Maximální velikost tabulky ve výchozím nastavení 16Mb , ale lze jej upravit pomocí max_heap_table_size serverová systémová proměnná. Upozorňujeme však, že tento limit je na motor - nikoli na stůl . Tj. veškerou vaši memory tabulky to budou sdílet. Chcete-li omezit velikost jednotlivé tabulky, budete muset pracovat na relaci hodnotu pro max_heap_table_size , jako

     mysql> SET max_heap_table_size = 24*1024*1024;
    


  1. Chyba při převodu XML ze sloupce CLOB na sloupec XMLType

  2. Připojte se ke sloupcům rozdělených řetězců v Oracle

  3. Jak zkombinuji dotaz SELECT + WHERE s dotazem INSERT?

  4. chyba sqlplus při výběru z externí tabulky:ORA-29913:chyba při provádění výzvy ODCIEXTTABLEOPEN