it-swarm-eu.dev

Mysqldump tabulky vyjma některých polí

Existuje způsob, jak mysqldump stůl bez některých polí?

Nech mě to vysvětlit:
Mám databázi MySQL s názvem tests. V tests mám 3 tabulky: USER, TOTO a TATA. Jen chci mysqldump některá pole tabulky USER, takže vyloučím některá pole jako mail, ip_login, atd.

Jak to mohu udělat?

14
user160293

Zkuste to:

SELECT column1, column2, column10
FROM USER
INTO OUTFILE "c:/user.csv"
  FIELDS TERMINATED BY ',' ENCLOSED BY '"'
  LINES TERMINATED BY "\n";

Pro více možností si přečtěte stránka dokumentace .

13
lg_

To nelze provést přímo pomocí mysqldump. Můžete však vytvořit dočasnou tabulku nebo pohled, který neobsahuje dotyčná data, a poté vypsat výsledná data. V případě pohledu si myslím, že budete muset použít INTO OUTFILE spíše než mysqldump k získání požadovaných dat, ale použití pohledu namísto dočasné tabulky má výhodu v tom, že v DBMS nezabírá žádný další prostor.

Druhou možností je vytvoření analyzátoru pro soubor k odstranění polí, která nechcete. Mírně řečeno, může se to velmi rychle zkomplikovat - to znamená, že se to zkomplikuje za předpokladu, že chcete vytvořit syntaktický analyzátor, který je robustní tváří v tvář vícebajtovým znakům, uniklým řetězcovým oddělovačům atd. Atd. Ale pro triviální nebo jeden -time-use case, může to být stále platná volba.

8
BMDan

K tomu můžete také použít program Phpmyadmin. Vytvořte dotaz a vyberte požadovaná pole, poté zvolte funkci „export“ v dolní části stránky (výsledky vašeho dotazu se exportují, nikoli celá tabulka) a vyberte možnost „Vlastní“. Poté můžete jako formát zvolit SQL - pokud chcete, můžete vytvořit řadu UPDATE dotazů místo INSERTS. Často může být rychlý způsob, jak něco takového udělat.

0
Pat

Mnoho nástrojů pro správu DB má možnost provést vlastní import. Zejména jsem to provedl pomocí Toad for MySQL pro přenos dat mezi tabulkami pomocí autoinkrementačních PK.

Výsledek dotazu jsem uložil do Excelu pomocí Průvodce exportem.

Poté můžete vyloučit sloupce pomocí Import Wizard nastavením zdrojového pole na: Přeskočit tento sloupec

import wizard

0
rrhartjr