2017-02-14 148 views
0

如何在powershell中顯示postgresql的輸出。下面是一個例子:如何在PowerShell中顯示&導出postgresql輸出

$query = "SELECT * FROM test where first_name='test'" 

function Get-ODBC-Data{ 
    param([string]$query=$(throw 'query is required.')) 
    $conn = New-Object System.Data.Odbc.OdbcConnection 
    $conn.ConnectionString = "Driver={PostgreSQL Unicode(x64)};Server=localhost;Port=5432;Database=Test;Uid=test;Pwd=test;" 
    $conn.open() 
    $cmd = New-object System.Data.Odbc.OdbcCommand($query,$conn) 
    $ds = New-Object system.Data.DataSet 
    (New-Object system.Data.odbc.odbcDataAdapter($cmd)).fill($ds) | out-null 
    $conn.close() 
    $ds.Tables[0] 
} 

function Set-ODBC-Data{ 
    param([string]$query=$(throw 'query is required.')) 
    $conn = New-Object System.Data.Odbc.OdbcConnection 
    $conn.ConnectionString= "Driver={PostgreSQL Unicode(x64)};Server=localhost;Port=5432;Database=test;Uid=test;Pwd=test;" 
    $cmd = new-object System.Data.Odbc.OdbcCommand($query,$conn) 
    $conn.open() 
    $cmd.ExecuteNonQuery() 
    $conn.close() 

} 

$result = Get-ODBC-Data -query $query 
$db = set-odbc-data -query $query 
  1. 如何顯示或屏幕截圖所示的格式取存在於該輸出值?

enter image description here

  • 我怎樣才能導出輸出到CSV在一個適當的格式?
  • 回答

    0

    我沒有測試,但嘗試使用下面的命令從PowerShell腳本

    C:\Get-Query | Out-GridView 
    C:\Get-Query | Export-CSV Info.csv 
    C:\Get-Query | Format-Table -autosize 
    

    輸出假設該文件中的腳本名爲Get-查詢

    The solution from this URL

    +0

    謝謝但這不起作用。在我的代碼中,$ db值顯示從數據庫中獲取的結果數量(比如說3)。我想要的是讓PowerShell以我的屏幕截圖中顯示的格式顯示輸出/結果。我不知道如何在我的腳本中編寫該部分。 – irish

    +0

    您可以使用現有的系統DSN,如下所示:http://stackoverflow.com/questions/29930687/retrieve-data-from-postgresql-using-powershell –