Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sqlite/3.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
Database 将包含2个表的CSV转换为SQLite_Database_Sqlite_Csv - Fatal编程技术网

Database 将包含2个表的CSV转换为SQLite

Database 将包含2个表的CSV转换为SQLite,database,sqlite,csv,Database,Sqlite,Csv,我有一个通过程序生成的CSV文件。(确切地说是airodump ng)我希望将SQLite数据库转换为.db文件 我更希望这样做是为了使数据更容易导航,但我的问题是生成的CSV中有两个单独的表 我不是最有优势的用户,因为这只是一个有趣的项目,所以我在Github上找到了一个基于python的脚本,名为CSVStoSQLite 我发现了其他各种各样的CSV,但sqlite似乎正是我想做的 BSSID, First time seen, Last time seen, channel, Speed,

我有一个通过程序生成的CSV文件。(确切地说是airodump ng)我希望将SQLite数据库转换为.db文件

我更希望这样做是为了使数据更容易导航,但我的问题是生成的CSV中有两个单独的表

我不是最有优势的用户,因为这只是一个有趣的项目,所以我在Github上找到了一个基于python的脚本,名为CSVStoSQLite

我发现了其他各种各样的CSV,但sqlite似乎正是我想做的

BSSID, First time seen, Last time seen, channel, Speed, Privacy, 
Cipher, Authentication, Power, # beacons, # IV, LAN IP, ID-length, 
ESSID, Key
00:00:00:00:00:00, 2018-01-01 23:23:23, 2018-01-01 23:23:23,10,100, 
OPN,, PSK,-60,2,0,   0.  0.  0.  0,15,TestNode254846254, 
11:11:11:11:11:11, 2018-01-01 23:23:23, 2018-01-01 23:23:23,2,, 
WPA2, CCMP,   ,-67,1,0,   0.  0.  0.  0,13,WIFI456824625, 
22:22:22:22:22:22, 2018-01-01 23:23:23, 2018-01-01 23:23:23,4,, WPA2 
WPA, , MGT,-67,3,0,   0.  0.  0.  0,11,45895142357, 
,,,,,,,,,,,,,, 
Station MAC, First time seen, Last time seen, Power, # packets, 
BSSID, Probed ESSIDs,,,,,,,,
00:00:00:00:00:00, 2018-01-01 23:23:23, 2018-01-01 
23:23:23,-100,100, (not associated) ,Wifi,,,,,,,,
11:11:11:11:11:11, 2018-01-01 23:23:23, 2018-01-01 23:23:23,-55,3, 
(not associated) ,TestNode254846254,,,,,,,,
22:22:22:22:22:22, 2018-01-01 23:23:23, 2018-01-01 
23:23:23,-63,1,00:00:00:00:00:00,,,,,,,,,
作为初始测试,我运行了CSV以查看是否会生成一个.db SQLite数据库,并按照预期工作,但当然,由于基本运行的性质,第一个表工作得很好,但第二个表显然在原始表中仅显示为数据,如果可能的话,我希望将数据输出到两个单独的表中

由于是CSV,字段当然通过逗号分隔,两个表通过14个连续的逗号分隔,当作为电子表格查看时,这14个连续的逗号出现,逗号之间有一个空行

是否有人知道我如何能够轻松地将数据转换为SQLite


问候。

这是一次性任务,手动方法可以吗?如果是这样的话,你可以使用一个文本操作工具,比如记事本+,它有正则表达式搜索和替换,正则表达式搜索并替换14个逗号以及它们后面的所有内容,直到行尾都是一个空字符串

保存到一个单独的文件,现在您有了一个仅包含第一个表的CSV文件

重新加载原始文件,正则表达式搜索并替换从行开始到14个逗号结束的所有内容,现在您有了一个仅包含第二个表的csv文件


通过csv-to-sql帮助程序运行这两个表。

您也可以使用awk单行程序自动拆分它。目的是让它成为一种持续的过程,所以我希望找到一种更自动的方法。啊,好的。我认为你没有标记你的问题,所以我不确定你在用什么语言工作。几乎每种语言都会有一个regex实现,所以你可以用你正在使用的任何语言来编写它。我对实现这个目标持开放态度,我还没有深入研究过自己写的东西,我试图在Github上使用一个现有的python程序,但当我来到这里时,我看到了很多关于SQLite命令的引用,可以转换为CSV文件,所以我对任何路径都很好奇