我有一些旧的 ODBC 连接编码,它使用 SQLGetInfo 函数在请求时收集各种连接详细信息。该代码目前正在重构为 .NET,但是它仍然需要保持少量的向后兼容性,直到其余区域也重构为 .NET
我需要能够使用 c# OdbcConnection.GetSchema() 重现以下 c++ 代码
char strInstanceName[200];
SQLSMALLINT lengthReturned;
SQLGetInfo(myhInstance, SQL_SERVER_NAME, strInstanceName, 200, &lengthReturned);
char strDSN[200];
SQLSMALLINT lengthReturned;
SQLGetInfo(myhInstance, SQL_DATA_SOURCE_NAME, strDSN, 200, &lengthReturned);
char strActiveStmts[200];
SQLSMALLINT lengthReturned;
SQLGetInfo(myhInstance, SQL_ACTIVE_STATEMENTS, strActiveStmts, 200, &lengthReturned);
char strActiveConns[200];
SQLSMALLINT lengthReturned;
SQLGetInfo(myhInstance, SQL_ACTIVE_CONNECTIONS, strActiveConns, 200, &lengthReturned);
我花了几个小时查看文档并搜索网络,但我无法找到或理解使用 OdbcConnection.GetSchema() 的等价物,即使文档和网络让我相信这是获取的功能所有这些信息。
示例代码会很好:)
致敬 DIG