Author Posts

February 3, 2017 at 6:49 pm

I am newb at powershell.

I am using powershell to get a json object out of my database.

I am getting the json out of my database ok and I can display it to the powershell console. But I am attempting to format that json into a readable form.

I understand the convertFrom-Json cmdlet. But when I run it I am a getting an exception that says:

ConvertFrom-Json : Unterminated string passed in.

This what I have in my powershell script:

$sql = "SELECT CAST(Content as VARCHAR(max)) AS Content FROM %$^%$ WHERE @#$#@ = 2"

$row = Invoke-Sqlcmd -Query -ServerInstance $#@#! -Database $#@#! -Username $#@#! -Password $#@#! -QueryTimeout 300

[string] $content = $row.Content

Write-Output $content | ConvertFrom-Json

Any thoughts, I have read a ton of articles about this.

Thanks!

February 4, 2017 at 2:43 pm

What's in $content. Can you show that?

February 6, 2017 at 3:34 pm

Thanks for your interest in helping me.

$content is the json object that looks similar to this except their are a bunch of escape characters:

{"glossary": { "title": "example glossary","GlossDiv": {"title": "S","GlossList": {"GlossEntry": { "ID": "SGML","SortAs": "SGML","GlossTerm": "Standard Generalized Markup Language","Acronym": "SGML","Abbrev": "ISO 8879:1986","GlossDef": { "para": "A meta-markup language, used to create markup languages such as DocBook.","GlossSeeAlso": ["GML", "XML"] },"GlossSee": "markup" }}}}
}

Thanks so much!

February 6, 2017 at 7:29 pm

So what happens if you copy the example you posted to a file and then add the escape characters back in, does it still work to use convertfrom-json?