标签: flat-file

如何使用Perl对平面文件进行全文搜索搜索?

我们有一个基于Perl的Web应用程序,其数据源自庞大的平面文本文件库.这些平面文件放在我们系统的目录中,我们广泛地解析它们将信息插入MySQL数据库,然后将这些文件移动到它们的归档存储库和永久主页(/www/website/archive/*.txt).现在,我们不会解析这些平面文件中的每一位数据,而一些较为模糊的数据项也不会被数据库化.

目前的要求是用户能够从Perl生成的网页执行整个平面文件存储库的全文搜索,并返回他们随后可以单击的命中列表并打开文本文件评论.

什么是最优雅,最有效和非CPU密集型方法来实现此搜索功能?

perl search flat-file

3
推荐指数
1
解决办法
1632
查看次数

从vba的Unicode字符串到平面文件

我想将一个unicode字符串存储在一个excel/vba宏的Windows框中的平面文件中.宏将普通字符串转换为unicode表示,需要将其存储在文件中并稍后检索.

unicode vba flat-file

3
推荐指数
1
解决办法
3780
查看次数

古老未知存储系统需要帮助

大家早,

我已经离开并告诉客户我可以将他们的一些旧数据从基于DOS的系统迁移到我为他们开发的新系统中.然而,我说没有实际查看存储旧系统中的数据的文件 - 我只是想快速谷歌将为我解决所有问题...我错了!

无论如何,这个程序有一个包含数百个文件的文件夹...包含各种文件扩展名的800个文件,.ave,.bak,.brw,.dat,.001,.002 ....,.007,.dbf, .dbe和.his.

.Bak显然不是SQL备份文件.

有没有人有任何编程经验使用任何这些文件类型谁可以指向我的方向来读取和提取数据?

我不能提到程序名称,因为我不认为原始开发人员会允许这个...

谢谢.

database legacy file-format dos flat-file

2
推荐指数
2
解决办法
729
查看次数

最受支持的方式来保护flatfiles(sqlite db)免受HTTP访问?

我正在开发一个使用SQLite作为数据库管理系统的PHP应用程序,MySQL和PostgreSQL等不是一个替代方案(虽然我真的很想使用pgsql),因为我希望设置非常适合初学者和零头痛一样.现在很多人都使用共享主机,而且很多人只提供对htdocs目录的直接FTP访问,但不能超过它.这意味着客户必须将SQLite-Database-File放在他们的htdocs中,这意味着全世界都可以访问它,任何人都可以下载它.

为客户提供某种保护的最佳方法是什么,这很简单并且在所有HTTP服务器上都受支持?

database sqlite http flat-file

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

在SSIS中有效批量导入数据,偶尔会出现PK重复内容?

经过一些转换后,我会定期将带有100k记录的平面文件加载到表中.该表在两列上有一个PK.整体数据不包含重复的PK信息,但偶尔会有重复数据.

我天真地不明白为什么SSIS拒绝我的所有记录时只有一些人违反了PK约束.我认为问题在于,在批量加载期间,即使其中一行违反PK约束,该批次中的所有行都会被拒绝.

如果我将OLE Db Destination的FastLoadMaxInsertCommitSize属性更改为1,如果修复了问题,但它会像狗一样运行,因为它每1行提交一次.

在MySQL中,批量加载工具允许您忽略PK错误并跳过这些行而不会牺牲性能.有谁知道在SQL Server中实现这一目标的方法.

任何帮助非常感谢.

ssis flat-file sql-server-2008

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

在导入到 SQL 表之前,如何从平面文件源在 SSIS 中添加 GUID 列?

我通过 SSIS 导入平面文件,然后将它们导出到 SQL 表中。我需要在中间某处添加一个包含 GUID 的附加列,以便它也可以导出到表中。

我已确保 SQL 表中准备好了一个附加列,用于将 GUID 传递到其中,但我不确定如何在包中创建 GUID,有什么想法吗?

谢谢

sql ssis guid flat-file

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

在SSIS中读取Tilde(〜)分隔文件

我正在尝试使用SSIS将Tilde(〜)分隔的.DAT加载到SQL Server DB.当我使用平面文件源来读取文件时,我没有看到〜分隔符的选项.我在下面的文件中粘贴了一行:

7318~97836:LRX PAIN MONTHLY DX~001~所有其他NSAIDs~1043676~001~1043676~001~OSR~401~01~ORALS,SOL,TAB/CAP RE~156720~50MG~ANSAID~100 0170-07

在这里,我需要将列之间的数据分隔为〜即列1应该具有'7318',列2应该具有'97836:LRX PAIN MONTHLY DX'.

有人可以帮我弄这个吗?这可以使用平面文件源完成,还是需要使用脚本任务?

sql-server ssis flat-file delimiter tilde

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

在 Mule 中使用 Dataweave 将分隔符填充转换为 JSON 格式

我需要在 mule 中使用 dataweave 将现有的分隔符文件转换为 json 格式。

样本输入:

Name~#~ID~#~Company~#~Address
SRI~#~1~#~Infy~#~Bangalore
Rahul~#~2~#IBM~#~US
John~#~3~#~SF~#~UK

Run Code Online (Sandbox Code Playgroud)

样品输出

{
Name: Sri
ID: 1
Company: Infy
Adress: Bangalore
},
{
Name: Rahul
ID: 2
Company: IBM
Adress: US

},
{
Name: John
ID: 3
Company: SF
Adress: UK
}
Run Code Online (Sandbox Code Playgroud)

但我低于输出

输出

数据编织转换

数据编织转换

json flat-file mule dataweave

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

通过 Vim 保存平面文件,在文件中添加一个不可见的字节来创建新行

标题并不具体,但我很难识别正确的关键词,因为我不确定这里发生了什么。出于同样的原因,我的问题可能有重复,如 。如果是这样的话:对不起!

我有一个通过平面文件接收数据的 Linux 应用程序。我不知道这些文件是如何生成的,但我可以毫无问题地读取它们。这些都是短文件,每个文件只有一行。

出于测试目的,我尝试修改其中一个文件并将其重新注入到应用程序中。但是当我这样做时,我可以在日志中看到它在消息末尾添加了一个神秘的分页符(导致应用程序无法识别该消息)...

举例来说,假设我收到一个名为original的平面文件,其中包含以下内容:

ABCDEF
Run Code Online (Sandbox Code Playgroud)

我复制了该文件并将其命名为copy

  • 如果我使用“diff”命令比较这两个文件,它会说它们是相同的(正如我所期望的那样)
  • 如果我通过 Vi 打开副本,然后退出而不更改也不保存任何内容,然后使用“diff”命令,它会说它们是相同的(正如我也期望它们一样)
  • If I open copy via Vi and then save it without changing anything and then use the "diff" command, I have the following (I added the dot for layout purpose):

diff original copy 1c1 < ABCDEF \ No newline at end of file --- .> ABCDEF

And if I compare the size of my two files, I can see that original …

linux vim diff flat-file character-encoding

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

如何从 .t​​xt 文件导入数据以填充 SQL Server 中的表

每天都有一个PPE.txt包含客户数据的文件,以分号分隔并且始终具有相同的布局,这些文件存储到特定的文件目录中。

每天有人必须根据此更新我们数据库中的特定表PPE.txt

我想通过 SQL 脚本自动化这个过程

我认为的解决方案是通过脚本将数据从该.txt文件导入到创建的表中,然后执行更新。

到目前为止我所拥有的是

IF EXISTS (SELECT 1 FROM Sysobjects WHERE name LIKE 'CX_PPEList_TMP%')
   DROP TABLE CX_PPEList_TMP
GO

CREATE TABLE CX_PPEList_TMP  
(
    Type_Registy CHAR(1),
    Number_Person INTEGER,
    CPF_CNPJ VARCHAR(14),
    Type_Person CHAR(1),
    Name_Person VARCHAR(80),
    Name_Agency VARCHAR(40),
    Name_Office VARCHAR(40),
    Number_Title_Related INTEGER,
    Name_Title_Related VARCHAR(80)
)

UPDATE Table1
SET SN_Policaly_Exposed = 'Y'
WHERE Table1.CD_Personal_Number = CX_PPEList_TMP.CPF_CNPJ
  AND Table1.SN_Policaly_Exposed = 'N'

UPDATE Table1
SET SN_Policaly_Exposed = 'N'
WHERE Table1.CD_Personal_Number NOT IN (SELECT CX_PPEList_TMP.CPF_CNPJ 
                                        FROM CX_PPEList_TMP)
  AND Table1.SN_Policaly_Exposed …
Run Code Online (Sandbox Code Playgroud)

sql t-sql sql-server csv flat-file

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