“Dodaj kolumnę do wszystkich tabel po pierwszej kolumnie mysql” Kod odpowiedzi

MySQL alter Table Dodaj najpierw kolumnę

-- ALTER TABLE tbl_name ADD COLUMN column_name column_definition 
--		[FIRST|AFTER existing_column];
ALTER TABLE office ADD COLUMN phone VARCHAR(200) DEFAULT '000' AFTER name;
ALTER TABLE office ADD COLUMN flag INT(1) FIRST;
ALTER TABLE office ADD COLUMN last_col INT(2);	-- Last column is default position
-- ↓ Test it (Fiddle)
VasteMonde

Dodaj kolumnę do wszystkich tabel po pierwszej kolumnie mysql

SELECT CONCAT('ALTER TABLE ', table_schema,'.', TABLE_NAME,' ADD COLUMN `hash` VARCHAR(50) NULL DEFAULT UUID() AFTER ', first_column, ';') AS ddl

FROM (

	SELECT
		(
			SELECT `COLUMN_NAME`
			FROM `INFORMATION_SCHEMA`.`COLUMNS`
			WHERE `TABLE_SCHEMA`=t.TABLE_SCHEMA AND `TABLE_NAME`=t.TABLE_NAME
			LIMIT 1
		) AS 'first_column',
		t.*
	FROM
	information_schema.tables t
	WHERE table_schema = 'your_table_name' AND table_type = 'base table'
	
) AS x;
Fair Fowl

Odpowiedzi podobne do “Dodaj kolumnę do wszystkich tabel po pierwszej kolumnie mysql”

Pytania podobne do “Dodaj kolumnę do wszystkich tabel po pierwszej kolumnie mysql”

Więcej pokrewnych odpowiedzi na “Dodaj kolumnę do wszystkich tabel po pierwszej kolumnie mysql” w Sql

Przeglądaj popularne odpowiedzi na kod według języka

Przeglądaj inne języki kodu