获取可用的SQI服务器列表

时间:2018-03-24 09:34:12

标签: sql-server qt dsn

如何获取可用的Sql服务器(或实例?)列表在本地网络上(最好是主机名)。 大致如何在DSN数据源设置中完成: 图片:https://i.stack.imgur.com/ADM6w.png

1 个答案:

答案 0 :(得分:0)

这可以使用Qt QProcess和windows命令SQLCMD

  

SQLCMD -L [c]

     

列出本地配置的服务器计算机以及的名称   在网络上广播的服务器计算机。这个   参数不能与其他参数结合使用。该   可以列出的最大服务器计算机数量为3000。

.h

#include <QProcess>

private slots:
    void readResult();
private:
    QProcess getSQLNodes;

的.cpp

 getSQLNodes.setProgram("SQLCMD");
 getSQLNodes.setArguments({"-Lc"});
 getSQLNodes.start();
 getSQLNodes.waitForStarted();
 connect(&getSQLNodes,&QProcess::readyRead, this, &MainWindow::readResult);

 void MainWindow::readResult()
 {
     while(getSQLNodes.bytesAvailable()){
     QString DSNservers =  getSQLNodes.readAll();
     qDebug() << DSNservers ;
     this->ui->plainTextEdit->appendPlainText(DSNservers);
     }
 }