Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/67.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
mysqldump在表上具有条件的数据库_Mysql - Fatal编程技术网

mysqldump在表上具有条件的数据库

mysqldump在表上具有条件的数据库,mysql,Mysql,我的MySQL数据库有包含列company\u id的表,而其他表没有,我想将所有数据转储到一个SQL文件中 但是我需要添加一个,其中company_id=1仅用于包含此列的表,其余的我需要获取所有数据 这对我不起作用,因为我必须指定表名,我需要的是在每个具有该列的表上转储所有带有条件的内容: mysqldump-u root-p root databaseName tableName--where company_id=1>mydb_tables.sql您是否尝试过使用mysqldump的组合

我的MySQL数据库有包含列
company\u id
的表,而其他表没有,我想将所有数据转储到一个SQL文件中

但是我需要添加一个
,其中company_id=1
仅用于包含此列的表,其余的我需要获取所有数据

这对我不起作用,因为我必须指定表名,我需要的是在每个具有该列的表上转储所有带有条件的内容:


mysqldump-u root-p root databaseName tableName--where company_id=1>mydb_tables.sql

您是否尝试过使用mysqldump的组合--tables选项?

但是,每次有更多/更少的表使用该列名时,都必须修改mysqldump命令

编辑: 您也可以尝试在数据库名称之后指定表名,--此时实际上不需要表

通常,mysqldump处理命令行上的first name参数 作为数据库名,以下名称作为表名

编辑2: 我刚刚测试了这个方法,将多个表及其行转储到“id=1”的位置,因此,如果您只是使用列company\u id指定所有表,那么它一定会起作用。
您将需要一个命令来转储包含该列的所有表,一个命令用于所有其他表(可能使用--ignore table在这里很方便)

因此,我需要两个
mysqldump
命令,第一个命令将对我指定的表执行
where company_id=1
,并且知道它们有列,第二个命令将在其余的表上,我将得到两个转储文件?