我想知道如何将位于Red服务器上的CSV文件吞入server数据库表中。
我知道我们可以编写一个存储过程/大容量插入来读取与SQL server相同的Windows服务器上的文件,并更新数据库,但不确定如何在Linux服务器上显示这些文件。
任何帮助都将不胜感激。
发布于 2013-08-05 12:40:43
从任意位置连接到MS的关键是ODBC。
您正在寻找一种能够轻松读取csv并将数据插入ODBC的语言。
ODBC有几种选择。如果您是Java,您可以通过这种方式获取用于服务器的jdbc并连接到数据库。让.jar成为类路径的一部分并连接起来。如果您的用户使用高要求的技术(java是相当安全的,而且您总是可以找到或雇用java程序员),这可能是一种选择。
我?从本质上说,我是一个perl的人。处理一个数据文件并将其导出到另一个数据文件是一个经典的perl解决方案域。
WIth perl,可以得到DBI (文档)作为数据库层的接口,然后DBD::CSV (教程)将数据从csv文件中读取,就好像它是数据库本身一样,然后DBD::ODBC将数据写入ODBC。通过CPAN安装perl模块是相当容易 (尽管我承认,在做了很多次之后,我说过)。
这可以用案文:CSV代替。但是,DBD方法有一种优雅之处,即编写程序从一个任意数据库读取(对数据进行任何适当的转换)并写入另一个任意数据库。如果操作正确,您会发现自己希望在某个时候从另一个数据库复制数据,这将对代码进行相当小的更改(为数据库安装适当的DBD驱动程序并读取数据)。
与程序员领域相比,采用一种完全不同的方法,将数据从linux机器转移到windows机器上。
mount -t cifs -o guest,uid=client_user,gid=users //192.168.1.100/share /path_to/mount或//192.168.44.100/share /path_to/mount cifs guest,_netdev 0 0 )。这些选项在机器之间需要更大程度的同步。要使文件可用,这两台机器都可以相互访问。这可能是困难的,如果一个是说,在非军事区和另一个不是。要在不同的机器(复制文件、进程文件)上完成工作,需要两组程序对时钟进行合理的同步,并且多组调度的进程能够运行。
https://softwareengineering.stackexchange.com/questions/207219
复制相似问题