Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/date/2.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
.MDF数据库的UnixODBC驱动程序问题。或者:有没有一种方法可以在没有sql server的情况下轻松提取一组表?_Sql_Linux_Database_Windows_Perl - Fatal编程技术网

.MDF数据库的UnixODBC驱动程序问题。或者:有没有一种方法可以在没有sql server的情况下轻松提取一组表?

.MDF数据库的UnixODBC驱动程序问题。或者:有没有一种方法可以在没有sql server的情况下轻松提取一组表?,sql,linux,database,windows,perl,Sql,Linux,Database,Windows,Perl,免责声明:说到数据库编程,我有点像n00b,所以请容忍我 我一直在尝试批处理.MDF SQL数据库文件中包含的大量数据(约20 gb)。这些文件包含通过气象气球获得的气象数据,每个表格包含约1秒的风、压力、高度、温度等观测值,并使用我们的无线电探空仪跟踪软件在未联网的Windows机器上创建。使用相关软件加载文件并将表格导出为ASCII文本文件是可能的(而且非常容易),但是,此过程需要手动加载每个表格。由于我正在进行一项需要尽可能多的探测的研究(我们有2000多个),因此在几年内反复进行这一过程

免责声明:说到数据库编程,我有点像n00b,所以请容忍我

我一直在尝试批处理.MDF SQL数据库文件中包含的大量数据(约20 gb)。这些文件包含通过气象气球获得的气象数据,每个表格包含约1秒的风、压力、高度、温度等观测值,并使用我们的无线电探空仪跟踪软件在未联网的Windows机器上创建。使用相关软件加载文件并将表格导出为ASCII文本文件是可能的(而且非常容易),但是,此过程需要手动加载每个表格。由于我正在进行一项需要尽可能多的探测的研究(我们有2000多个),因此在几年内反复进行这一过程,每天两次的观测是非常耗时的

我一直在把电脑上的文件放在我的笔记本电脑上运行Linux MINT,并认为自己对Perl很流利……我用Perl脚本进行我的大部分数据分析。也就是说,我花了最宝贵的时间试图进入数据库文件

我已经尝试使用DBI包连接到其中一个文件,该包在

$dbh = DBI->connect("DBI:ODBC:$filename") or die "blahblahblah";
我已经安装并配置了unixODBC,已经下载了“libmyodbc.so”和“libodbcmyS.so”,并且不断得到错误信息

DBI连接(“”,,…)失败:[unixODBC][Driver Manager]未找到数据源名称,并且在dumpsql.pl第6行未指定默认驱动程序(SQL-IM002)

在过去的几天里,我尝试了很多方法来弥补这个问题,为了简洁起见,我不会在这里发布它们。我的odbcinst.ini文件如下:

[MySQL]
Description = ODBC for MySQL
Driver = /usr/lib/x86_64-linux-gnu/odbc/libmyodbc.so
Setup = /usr/sib/x86_64-linux-gnu/odbc/libodbcmyS.so
FileUsage = 1
我很困惑。我想我正在做各种在线教程建议的一切,但是其他人都在连接服务器,这些文件都是本地的,并且在同一个目录中!有人能给我指出正确的方向吗?我只想用垂直探测数据计算气象值!我是不是遗漏了一些显而易见的东西


任何帮助都将不胜感激

原来的数据库服务器似乎是Microsoft SQL server(MDF文件)。恐怕这些文件在Linux机器上是无用的。您需要Windows计算机上的Microsoft SQL Server才能访问包含的数据

您描述了可以在SQL server上手动附加MDF文件,然后可以将所需数据导出为文本文件。试着让它自动化。我不是MS SQL Server专家,但这应该是可能的


这是一本书。因此,我的方法是编写一个脚本,迭代2000个MDF文件,并将每个文件附加到SQL server。然后执行一个查询以导出数据,然后分离MDF。

我知道这已经过去几个月了,但我最终还是让它工作了:我在win7分区上使用PYODBC的方法完成了所有工作。所有的数据都被提取出来了,我能够完成我的研究!感谢您的及时回复,并为迟来的反馈感到抱歉。我想提高投票率,但我缺乏必要的声誉点数嘿,很高兴听到你成功了。