我的问题是:是否有 ODBC 的替代方案可以让我们将 SQL Server 连接到 MS Access?
情况是这样的:我的公司使用专有的 SQL 数据库 (ProVenue),并决定“不再支持 ODBC”到我们的前端工具 MS Access,而没有告诉我们。
我们目前正在从 ProVenue 迁移,但与此同时,我们却被一家“不再支持”我们的 ODBC 连接的供应商所困扰。由于我们几个月后就要离开,供应商也没有动力提供帮助。
我设计了一种解决方法,手动导出 ProVenue 表 (ASCII)、证明(是的,导出实用程序拉取不可靠)、每天转换并上传到 Access 中。也就是说,考虑到表的数量,这非常耗时。这种解决方法可能是一份全职工作。
你知道有什么替代方案吗?
我想将 MS Access 与 MySQL 连接。我安装了 Xampp for MySQL,现在安装了 ODBC 驱动程序 5.3。我转到“数据源”并单击“系统 DSN”以添加 MySQL ODBC 5.3 驱动程序(如本视频https://www.youtube.com/watch?v=F06hvR6ksh4所示)。但没有任何 MySQL ODBC 5.3 驱动程序。我的操作系统是 Windows 7 Home x64。如何将 ODBC 驱动程序连接到 MySQL 服务器?
我正在尝试从 Ubuntu 连接到 Windows Server 中的 Oracle。我已经为 Ubuntu 安装了 unixODBC 和 Oracle 驱动程序。当我尝试使用 isql 连接时,出现以下错误:
user@user:~$ isql -v oracle-jono username password
[S1000][unixODBC][Oracle][ODBC][Ora]ORA-12545: Connect failed because target host or object does not exist
[ISQL]ERROR: Could not SQLConnect
Run Code Online (Sandbox Code Playgroud)
当我用 sudo 运行它时,我得到了不同的错误:
[S1000][unixODBC][Oracle][ODBC][Ora]ORA-12162: TNS:net service name is incorrectly specified
Run Code Online (Sandbox Code Playgroud)
我尝试了许多环境变量的组合,但都没有成功(ORACLE_HOME、ORACLE_SID、TNS_ADMIN、TWO_TASK)。这是我第一次使用 Oracle 做任何事情,所以实际上我对此一无所知。我还尝试修改 odbc.ini 和 tnsnames.ora 文件。
我用于此 Oracle 连接的 odbc.ini:
[oracle-jono]
Description = ...
Driver = OracleDriver
Server = 111.222.111.222
User = ...
Password = ...
Port = 1521
Database = mydatabase
Run Code Online (Sandbox Code Playgroud)
我的 …
我启动了一个 Azure SQL 数据库并使用 SSMS 连接到它,希望能够遵循本教程。当我查看对象资源管理器时,我看到的唯一两个文件夹是“Databases”和“Security”;没有“服务器对象”,我一生都无法弄清楚为什么不存在。
它是 Azure SQL 数据库的东西吗?预先感谢您提供的任何帮助!
我目前在为我的 php 应用程序编写 Dockerfile 时遇到问题。我的 Dockerfile 可以工作,但缺少连接到 MS SQL Server 数据库所需的 pdo-odbc 驱动程序。这是我当前的 Dockerfile:
FROM php:apache
RUN apt-get install && \
apt-get update && \
apt-get install tdsodbc unixodbc unixodbc-dev -y && \
docker-php-ext-configure pdo_odbc --with-pdo-odbc=unixODBC,/usr && \
docker-php-ext-enable pdo_odbc && \
a2enmod rewrite && \
service apache2 restart && \
sed -ri -e 's!/var/www/html!${APACHE_DOCUMENT_ROOT}!g' /etc/apache2/sites-available/*.conf && \
sed -ri -e 's!/var/www/!${APACHE_DOCUMENT_ROOT}!g' /etc/apache2/apache2.conf /etc/apache2/conf-available/*.conf && \
php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');" && \
php -r "if (hash_file('SHA384', 'composer-setup.php') === '544e09ee996cdf60ece3804abc52599c22b1f40f4323403c44d44fdfdd586475ca9813a858088ffbc1f233e9b180f061') { …Run Code Online (Sandbox Code Playgroud) 我在服务器上正确配置了一个 System DSN ODBC 驱动程序(连接已经过测试并且工作正常)。
我有一个 SSIS 包,当我尝试创建 ODBC 连接管理器时,在数据源的下拉列表中找不到我的 ODBC 连接。
我尝试刷新列表,关闭并重新打开解决方案,甚至重新创建解决方案。
以前有没有人遇到过这种情况,如果有,您是如何解决的?
非常感谢
从 R Studio 的ODBC 数据库文档中,我可以看到一个如何将 SQL 表读入 R 数据框架的简单示例:
data <- dbReadTable(con, "flights")
Run Code Online (Sandbox Code Playgroud)
BGBUref让我粘贴我正在尝试读取 R 数据框的表格图形(?)。这是来自我在 R studio 中的连接窗格。
如果我使用与上面相同的语法,con我的输出在哪里dbConnect(...) ,我得到以下内容:
df <- dbReadTable(con, "BGBURef")
#> Error: <SQL> 'SELECT * FROM "BGBURef"' nanodbc/nanodbc.cpp:1587: 42S02:
#> [Microsoft][ODBC Driver 17 for SQL Server][SQL Server]Invalid object name
#> 'BGBURef'.
Run Code Online (Sandbox Code Playgroud)
我对“表”的理解是否不正确?或者我是否需要执行类似的操作才能访问嵌套BGBUref表:
df <- dbReadTable(con, "QnRStore\dbo\BGBURef")
#> Error: '\d' is an unrecognized escape in character string starting ""QnRStore\d"
Run Code Online (Sandbox Code Playgroud)
如果我单击小电子表格图标,数据BGBUref框将出现在 R Studio 中。就我而言,我只是不知道如何将其放入定义的数据框中df。
这是我运行这些命令时的输出: …
我在这里找到了一个很棒的C++/ODBC示例......
我下载的项目构建很好,一切正常.但是,当我将.cpp和.h文件复制到另一个项目时,我似乎有一个链接问题.
将SQLConnect在sql.h功能是一个我想要的.当我easyodbc.h在我下载的项目中的文件中右键单击此函数时,它会跳转到sql.h中的声明.生活很好.
但是,在我创建的项目中,当我这样做时,它跳转到sqlucode.h中的UNICODE定义.这似乎导致了问题,我的测试项目崩溃了.
我#include在项目的任何地方都没有sqlucdode.h,但它仍然将声明解析为sqlucode.h中的声明.我怎么能阻止这个?谢谢.
我正在使用ADO.NET通过ODBC连接到Oracle DB.除了使用简单的SQL查询绑定参数外,一切都运行正常:
Connection.Open();
IDbCommand command = Connection.CreateCommand();
command.CommandText = "SELECT length FROM activity_type WHERE name = :name_of_activity";
var parameter = command.CreateParameter();
parameter.ParameterName = ":name_of_activity";
parameter.Value = "Short_break";
command.Parameters.Add(parameter);
int result = Convert.ToInt32(command.ExecuteScalar());
Connection.Close();
Run Code Online (Sandbox Code Playgroud)
它总是返回0结果(ExecuteScalar()来自读者的相同的null ).但是,如果我像这样简单的SQL查询:command.CommandText = "SELECT length FROM activity_type WHERE name = 'Short_break'"它会像魅力一样工作.更重要的是,我在代码的INSERT INTO句子中使用了类似的结构,并且它们没问题.
我错过了什么吗?
我试图根据这些说明为Debian安装ODBC驱动程序:https://blog.afoolishmanifesto.com/posts/install-and-configure-the-ms-odbc-driver-on-debian/
但是试图运行:
sqlcmd -S localhost
我收到了错误
libcrypto.so.10:无法打开共享对象文件:没有这样的文件或目录
可能是什么原因?
到目前为止我已经尝试过
1.
$ cd /usr/lib
$ sudo ln -s libssl.so.0.9.8 libssl.so.10
$ sudo ln -slibcrypto.so.0.9.8 libcrypto.so.10
2.
/usr/local/lib64 to the /etc/ld.so.conf.d/doubango.conf file
3.
sudo apt-get update
sudo apt-get install libssl1.0.0 libssl-dev
cd /lib/x86_64-linux-gnu
sudo ln -s libssl.so.1.0.0 libssl.so.10
sudo ln -s libcrypto.so.1.0.0 libcrypto.so.10
4. Sudo apt-get install libssl0.9.8:i386
Run Code Online (Sandbox Code Playgroud)
这些都没有帮助.