List:General Discussion« Previous MessageNext Message »
From:John Oliver Date:March 16 2010 11:33pm
Subject:Re: Trancate table from command line?
View as plain text  
On Tue, Mar 16, 2010 at 02:12:42PM -0700, John Oliver wrote:
> Is there a way to use mysqladmin (or mysql) to truncate a table as a
> one-off command from the command line?
> 
> I have an issue with importing data from one database into another, but
> the second database might have columns that the first did not.
> 
> On database 1, I use mysqldump to grab certain tables, and when I try to
> simply "overlay" those tables onto the new database, I get an error 
> 
> ERROR 1062 (23000) at line 24: Duplicate entry '378-4' for key 1
> 
> So we're thinking we should truncate the table first, but it appears
> this must be done manually in the mysql> shell, which won't work... this
> operation needs to be scripted, or to be presented as one command line
> that can be copy-and-pasted.
> 
> How can I do something like :
> 
> mysqladmin -h db_server -u user -pPASSWORD <DATABASE> truncate table
> table1 ?

Just to leave an answer behind for the next character who runs into
this...

for i in table1 table2 table3 ; do mysql -h db_server -u user -pPASSWORD
-e "truncate table $i" DATABASE; done

-- 
***********************************************************************
* John Oliver                             http://www.john-oliver.net/ *
*                                                                     *
***********************************************************************
Thread
Trancate table from command line?John Oliver16 Mar
  • Re: Trancate table from command line?John Oliver17 Mar
  • Re: Trancate table from command line?Евгений Килимчук17 Mar
    • RE: Trancate table from command line?Jerry Schwartz17 Mar
      • RE: Trancate table from command line?Jerry Schwartz17 Mar
  • RE: Trancate table from command line?Carlos Eduardo Caldi17 Mar