相关疑难解决方法(0)

如何将CSV文件导入MySQL表

我有一个来自客户端的非标准化事件日记CSV,我正在尝试将其加载到MySQL表中,以便我可以重构为一种理智的格式.我创建了一个名为"CSVImport"的表,它为CSV文件的每一列都有一个字段.CSV包含99列,因此这本身就是一项非常艰巨的任务:

CREATE TABLE 'CSVImport' (id INT);
ALTER TABLE CSVImport ADD COLUMN Title VARCHAR(256);
ALTER TABLE CSVImport ADD COLUMN Company VARCHAR(256);
ALTER TABLE CSVImport ADD COLUMN NumTickets VARCHAR(256);
...
ALTER TABLE CSVImport Date49 ADD COLUMN Date49 VARCHAR(256);
ALTER TABLE CSVImport Date50 ADD COLUMN Date50 VARCHAR(256);
Run Code Online (Sandbox Code Playgroud)

表中没有约束,并且所有字段都包含VARCHAR(256)值,但包含计数(由INT表示),是/否(由BIT表示),价格(由DECIMAL表示)和文本blurbs(由TEXT代表).

我试图将数据加载到文件中:

LOAD DATA INFILE '/home/paul/clientdata.csv' INTO TABLE CSVImport;
Query OK, 2023 rows affected, 65535 warnings (0.08 sec)
Records: 2023  Deleted: 0  Skipped: 0  Warnings: 198256
SELECT * FROM CSVImport;
| NULL             | NULL        | NULL …
Run Code Online (Sandbox Code Playgroud)

mysql csv load-data-infile

284
推荐指数
11
解决办法
91万
查看次数

来自查询的mysqldump

如何从查询中为表创建mysql转储?

我需要这样的东西......

mysqldump -uroot -pxxxx mydb "select * from table where name='1';" >  /tmp/a
Run Code Online (Sandbox Code Playgroud)

谢谢.

mysql mysqldump

11
推荐指数
1
解决办法
2万
查看次数

MySQL 转储的动态匿名化

我正在使用 mysqldump 创建实时应用程序的数据库转储以供开发人员使用。

该数据包含客户数据。我想匿名化这些数据,即删除客户姓名/信用卡数据。

一个选项是:

  • 创建数据库副本(创建转储和导入转储)
  • 触发对数据进行匿名化的 SQL 查询
  • 转储新数据库

但这需要很大的开销。更好的解决方案是在转储创建期间进行匿名化。

我想我最终会解析所有输出mysqlsqldump?有没有更聪明的解决方案?

php mysql anonymize

7
推荐指数
1
解决办法
6169
查看次数

标签 统计

mysql ×3

anonymize ×1

csv ×1

load-data-infile ×1

mysqldump ×1

php ×1