C# 将文件保存到MySQL数据库

C# 将文件保存到MySQL数据库,c#,mysql,C#,Mysql,我正在做一个带有MySQL数据库的c#项目。我有一个日志文件,我想将此文件存储在数据库中 我想将实际文件保存到数据库中,但我看到的是必须将其编码为字符串或将字节写入字符串并将其放入数据库中,这就是存储文件的方式吗,我想你可以给这个命令文件路径,它将它存储在数据库中,而不需要我在软件中进行所有编码 如果这有什么不同,它将需要再次从PHP中检索,但我猜这不重要 程序必须解析日志文件并将其转换为SQL查询。如果要在数据库中存储文件的内容,则可以对其进行编码或将字节存储在表列中。这是没有办法的 如果只想

我正在做一个带有MySQL数据库的c#项目。我有一个日志文件,我想将此文件存储在数据库中

我想将实际文件保存到数据库中,但我看到的是必须将其编码为字符串或将字节写入字符串并将其放入数据库中,这就是存储文件的方式吗,我想你可以给这个命令文件路径,它将它存储在数据库中,而不需要我在软件中进行所有编码


如果这有什么不同,它将需要再次从PHP中检索,但我猜这不重要

程序必须解析日志文件并将其转换为SQL查询。

如果要在数据库中存储文件的内容,则可以对其进行编码或将字节存储在表列中。这是没有办法的

如果只想存储文件的路径,那么只需将路径作为参数传递给
MySQLCommand
,但当您在文件系统中移动文件时,您的记录显然将无效


关于哪种方法最好,请回答一个有点相关的问题:将文件内容存储在数据库中或仅存储文件系统中的路径。

是的,您必须将其编码为字符串或字节以存储文件。另一种方法是存储日志文件位置,并将日志文件保存在磁盘上的某个位置。

为什么不使用Log4Net?它能够自动登录到数据库。查看有关如何将数据库连接到Log4Net的详细信息


原始衰减链接:http://logging.apache.org/log4net/release/sdk/log4net.Appender.AdoNetAppender.html

这听起来可能有点可笑,但你应该看看

下面是MySQL文档的示例

mysql> UPDATE t
        SET blob_col=LOAD_FILE('/tmp/picture')
        WHERE id=1;
只要日志文件足够小,可以放入一个BLOB中,那么这就是您的唯一尝试


如果日志文件太大,只需将日志文件归档到某个地方并保存文件位置即可。

不幸的是,您的链接已损坏。@JohnP谢谢-我添加了一个指向配置示例的链接,不幸的是,MySQL没有直接链接到那里,但示例提供了足够的信息,可以找到答案