sql >> Database teknologi >  >> RDS >> Mysql

Hvordan forudindlæser man tabeller i INNODB-bufferpuljen med MySQL?

Dette skulle give dig en liste over forespørgsler, der skal køres;)

SELECT 
  CONCAT('SELECT ',MIN(c.COLUMN_NAME),' FROM ',c.TABLE_NAME,' WHERE ',MIN(c.COLUMN_NAME),' IS NOT NULL')
FROM
  information_schema.COLUMNS AS c
LEFT JOIN (
  SELECT DISTINCT
    TABLE_SCHEMA,TABLE_NAME,COLUMN_NAME
  FROM
    information_schema.KEY_COLUMN_USAGE
) AS k
USING
  (TABLE_SCHEMA,TABLE_NAME,COLUMN_NAME)
WHERE
  c.TABLE_SCHEMA = 'yourDatabase'
  AND k.COLUMN_NAME IS NULL
GROUP BY
  c.TABLE_NAME

Du kan sætte det ind i den lagrede procedure og gå over resultatsættet med markøren. Opret en forberedt erklæring fra hver række, og udfør.



  1. SQL:Gentag en resultatrække flere gange, og nummerér rækkerne

  2. Skift datoformat (i DB eller output) til dd/mm/åååå - PHP MySQL

  3. Pymysql Insert Into virker ikke

  4. Mysql int(11) nummer uden for rækkevidde