如果SQL结果为空,则输出错误

我正在运行执行查询并在一行中输出记录的powershell脚本。

如果查询未在数据库中找到记录,如何输出通知?

我试图评估$ rdr是否为$ NULL,但是整个输出为null,好像数据库中文件中没有IP地址一样:

foreach ($k in $file){


    $conn.Open()

    $sql = "SELECT dbo.sem_computer.COMPUTER_NAME,[IP_ADDR1_TEXT],(dbo.SEM_AGENT.FREE_DISK/1073741824)as 'Free Disk Space (GB)', 
    (dbo.SEM_COMPUTER.DISK_TOTAL/1073741824) as 'Total Disk Space (GB)',
    (dbo.SEM_AGENT.FREE_MEM/1073741824) as 'Free Memory (GB)', (dbo.SEM_COMPUTER.MEMORY/1073741824) as 'Total Memory (GB)', 
    dbo.SEM_COMPUTER.OPERATION_SYSTEM,NAME, SEM_AGENT.MAJOR_VERSION
    FROM dbo.sem_computer, [dbo].[V_SEM_COMPUTER], dbo.IDENTITY_MAP, dbo.SEM_CLIENT, dbo.SEM_AGENT
    WHERE [dbo].[V_SEM_COMPUTER].COMPUTER_ID = SEM_COMPUTER.COMPUTER_ID
    AND dbo.SEM_CLIENT.GROUP_ID = IDENTITY_MAP.ID
    AND dbo.SEM_CLIENT.COMPUTER_ID = dbo.SEM_COMPUTER.COMPUTER_ID
    AND dbo.SEM_COMPUTER.COMPUTER_ID = dbo.SEM_AGENT.COMPUTER_ID
    AND [IP_ADDR1_TEXT] = '$k'"

    $cmd = New-Object System.Data.SqlClient.SqlCommand($sql,$conn)


    do{
    try{
        $rdr = $cmd.ExecuteReader()

        if ($rdr -eq $Null){
            write-host $k not found in database
        }
        # Read Computer Name, Computer ID, IP address, Domain, and Operating System from the Database into a multidimensional array

        while ($rdr.read()){
                $sql_output += ,@($rdr.GetValue(0),",", $rdr.GetValue(1), ",", $rdr.GetValue(2),",",  $rdr.GetValue(3), ",", $rdr.GetValue(4), ",", $rdr.GetValue(5),",",  $rdr.GetValue(6), ",", $rdr.GetValue(7), ",", $rdr.GetValue(8))
        }

        $transactionComplete = $true
    }
    catch{
        $transactionComplete = $false
    }
    }until ($transactionComplete)



    $conn.Close()    
}

Add-Content C:\PS\NOC_IP_Address_Statistics.csv "Computer Name,IP Address,Free Disk Space (GB),Total Disk Space (GB),Free Memory (GB),Total Memory(GB),Operating System,Group,SEP Version" 
foreach ($i in $sql_output){
    Add-Content C:\PS\NOC_IP_Address_Statistics.csv "$i"
}
布鲁斯

这对我有用。

if ($rdr.Read()) { 'Data Exists'; $rdr.GetValue(0); }
else { 'No Data Returned' }

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如果文件夹为空则抛出错误

来自分类Dev

如果文件夹为空则抛出错误

来自分类Dev

如果列结果为空,则C ++ SQLite Stop错误

来自分类Dev

如果 SQL 值为空,则输出文本

来自分类Dev

SQL提琴输出错误

来自分类Dev

MetalPetal 的 MTIColorLookupFilter 输出错误结果

来自分类Dev

Snowflake存储过程,检查结果集是否为空而不抛出错误

来自分类Dev

awk运行,但结果输出为空

来自分类Dev

如果结果为空,则显示“ 0”

来自分类Dev

只要输出错误的int就会产生错误的结果

来自分类Dev

如果NOT IN段中的表为空,则SQL语句不返回任何结果

来自分类Dev

将SQL结果集存储在嵌套结构中,如果为空则省略

来自分类Dev

如果SQL查询结果为空,则发送电子邮件

来自分类Dev

如果变量为空/空则显示结果,如果变量不为空则显示其他结果

来自分类Dev

对JK FF建模时输出错误:输出为x

来自分类Dev

SQL xml输出参数抛出错误?

来自分类Dev

SQL查询给出错误的输出

来自分类Dev

SQL 2汇总给出错误的结果

来自分类Dev

sql group by date 给出错误的结果

来自分类Dev

sql更新给出错误的结果

来自分类Dev

如果JTextField为空,则引发错误

来自分类Dev

如果字符串为空,带有包含的 Javascript 过滤器会给出错误

来自分类Dev

如果玩家在掷硬币时输赢,则输出错误

来自分类Dev

如果玩家在掷硬币时输赢,则输出错误

来自分类Dev

SQL查询2表的结果为空

来自分类Dev

Java + SQL Server:结果集为空?

来自分类Dev

如果命令输出为空而不捕获它,则返回1

来自分类Dev

如果完整范围为空,则 VBA 循环遍历范围并输出

来自分类Dev

如果游标结果集为空,则返回某物

Related 相关文章

热门标签

归档