【发布时间】:2011-07-28 18:04:53
【问题描述】:
我已经看到可以使用 Input Needs["DatabaseLink"] 和 conn = OpenSQLConnection[JDBC["MySQL(Connector/J)", "yourserver/yourdatabase"], "Username" -> "yourusername", "Password" -> "yourpassword"] 在 Mathematica 和 MySQL 数据库之间建立连接(以防有人想尝试一下)。顺便提一下,DatabaseLink here 的文档.
有没有人有以这种方式使用 Mathematica 的经验,可能是为了分析数据库中包含的数据?是否存在明显的缺点(速度、所需的内存等)?
【问题讨论】:
-
我用它来分析一个相当大的工业 Oracle 数据库的元数据,在 XML Hibernate 映射的半自动更正的上下文中(我需要它的 Java 项目使用 Hibernate 作为 ORM 层) 由于数据库中的更改(表名、列名等)。它对我很有用,但由于我对元数据最感兴趣,我没有将大量数据从数据库导入 Mathematica 或提交回 db,因此无法评论性能。不过我希望它是体面的。
-
非常感谢您的意见。实际上,您解决了我正在考虑的一个问题,即插入回数据库。鉴于 Mathematica 可以完成的大量数据操作,肯定有一些应用程序通过 Mathematica 使用插入。很高兴知道它在其他情况下也能很好地工作,尽管性能肯定是一个问题。
-
与 MySQL 无关,但如果您想要快速数据库访问,也值得一看的是 QLink for TokyoCabinet。
-
顺便说一句,东京内阁似乎已被Kyoto Cabinet取代......也许QLink需要更新。这些类型的数据库很自然地用于存储 Mathematica 数据,因为“数据库是一个包含记录的简单数据文件,每个记录都是一对键和一个值......既没有数据表的概念,也没有数据类型......”
-
@Simon - 感谢一百万分享链接。我以前从未遇到过这些数据库工具(相信我,我为 Mathematica 代码/好东西做了很多钓鱼)。如果您还没有这样做,您应该将它们添加到 Wiki。您可能还会提到 Sal Mangano 在 Kdb+ 上的演示(YouTube 上的视频)。很酷的东西。
标签: mysql database wolfram-mathematica