Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/apache-kafka/3.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
Php 需要帮助解决mysql和odbc查询问题吗_Php_Mysql_Sql Server_Odbc - Fatal编程技术网

Php 需要帮助解决mysql和odbc查询问题吗

Php 需要帮助解决mysql和odbc查询问题吗,php,mysql,sql-server,odbc,Php,Mysql,Sql Server,Odbc,您好,我正在开发一个应用程序,其中数据来自MSSQL数据库。在这里,我使用php odbc连接获得了使用该应用程序所需的所有数据。但现在我有一个问题: 我正在寻找: 来自mssql(假设)mssql_表_A的所有数据都将在此应用程序中列出,每行都会带有复选框,以便用户可以检查所需的数据,当他点击save时,检查后的数据将存储在本地MySQL数据库(假设)MySQL_表_A中 所以下一次当他再次想要更多的数据时,这个应用程序将列出mssql_table_A中的所有数据,这些数据在mysql_tab

您好,我正在开发一个应用程序,其中数据来自MSSQL数据库。在这里,我使用php odbc连接获得了使用该应用程序所需的所有数据。但现在我有一个问题:

我正在寻找:

来自mssql(假设)mssql_表_A的所有数据都将在此应用程序中列出,每行都会带有复选框,以便用户可以检查所需的数据,当他点击save时,检查后的数据将存储在本地MySQL数据库(假设)MySQL_表_A中

所以下一次当他再次想要更多的数据时,这个应用程序将列出mssql_table_A中的所有数据,这些数据在mysql_table_A中不存在

问题是:

如果这两个dataflwo都来自MYSQL,我就可以使用MYSQL选择查询轻松地完成这项工作

mysql_query("SELECT * FROM mysql_table_a WHERE NOT EXISTS (SELECT * FROM mysql_table_B WHERE thisID != thatID)")
但在这里,我如何检查mysql表中存在的数据并列出odbc mssql数据库中的数据

请帮我解决这个问题


谢谢..

您需要使用
mssql
sqlsrv
PDO
函数连接到mssql<代码>mysql函数严格针对mysql

如果要从两个连接中提取数据,则需要两个独立的连接


或者,您可以使用ODBC连接从MSSQL连接到MySQL,并在MSSQL端执行查询。

其他答案已经告诉您如何连接这两个数据库,但根据您的评论,您仍然希望知道如何进行比较

我必须假设您至少有一列,您可以唯一地标识表_a中不在表_b中的行。如果你在MS SQL Server中链接mysql,就像一个答案所说的那样

select * from mssql.table_a where unique_column not in (select unique_column from mysql.table_b)
但这是可行的,因为mssql在mssql中链接到mysql,即,您可以执行一个查询,mssql将为您执行连接

如果出于某种原因,您不能或不想通过链接表将mysql链接到ms sql,最简单的方法是在表_a中有某种时间戳。假设写入表_a的每个记录都有一个插入时间戳:

mysql connection does select max(timestamp) into X from mysql.table_b
mssql connection does select * from mssql.table_a where timestamp > X

如果我们对您的数据了解得更多,可能还有其他方法。

您是使用mssql还是mysql?我使用mysql存储检查的数据,因为所有数据都来自mssql,我通过php odbc连接到mssql以检索所有数据,我会在mssql本身中标记所选数据,但是我只被提供了对mssql数据库的读取权限。我在检索数据方面没有问题,你能告诉我如何检查来自mssql的数据是否存在于mysql中,这样如果它存在,我就可以跳过这些,只列出哪些存在或不存在。odbc_exec($odbc_conn,$query)mysql($query,$mysqlConn)@sravis您可以将数据放入数组并比较数组。但是,如果您直接从MSSQL到MySQL建立ODBC连接会更好。MSSQL中有大量数据(每天超过1000条记录),我有两个不同的php连接,一个用于ODBC,另一个用于MySQL,两者都运行良好,但是如何从MSSQL获取数据来检查MySQL表中是否存在记录?使用数组我不认为这是一个更好的主意,因为有大量的数据,你能告诉我一个查询,可以检查mysql中的现有记录,然后从mssql中的不存在记录列表。@sravis看看如何将mysql链接到mssql。建立链接服务器后,可以从MSSQL中的MySQL表编写查询。