私はUSDAの食品APIからさまざまな食品の栄養報告を引き出しています。私の要求にはpowershellスクリプトを使用しており、USDAの文書には要求ごとに最大1500レコードが記載されています。私は値を最大= 164まで引き上げることができますが、私が試してみるとすぐに165に変更すると、 'S'の近くに誤った構文エラーが出ます。これを引き起こしている可能性のある手掛かりはありますか?コードとPowershell APIリクエストの問題 - 非常に奇妙な
PS以下のエラー:
Function Add-APIData ($server, $database, $text)
{
$scon = New-Object System.Data.SqlClient.SqlConnection
$scon.ConnectionString = "SERVER=$server;DATABASE=$database;Integrated Security=true"
$cmd = New-Object System.Data.SqlClient.SqlCommand
$cmd.Connection = $scon
$cmd.CommandText = $text
$cmd.CommandTimeout = 0
$scon.Open()
$cmd.ExecuteNonQuery()
$scon.Close()
$cmd.Dispose()
$scon.Dispose()
}
//this is where the max value is stored
[string]$webstring = "https://api.nal.usda.gov/ndb/nutrients/?format=json&max=164&api_key=CLJnYzvrhMBcFtoQ4hohIL4Scs3tiRpOFXS7UhHM&nutrients=205&nutrients=204&nutrients=208&nutrients=269&fg=0100"
$webget = New-Object System.Net.WebClient
$result = $webget.DownloadString($webstring)
$result = ConvertFrom-Json $result
$add = @()
foreach ($r in $result.report.foods){
$add += "INSERT INTO BRUH VALUES ('" + $r.ndbno + "','" + $r.name + "')"
}
Add-APIData -server "NATHAN\SQLEXPRESS" -database "Lab2" -text $add
エラー: 'S' の近くに「不適切な構文 閉じられていない引用符の後に:。 "0" 引数(複数可)との "は、ExecuteNonQuery" を呼び出す
例外文字列 ')'ラインで :12チャー:5 + $ cmd.ExecuteNonQuery() + ~~~~~~~~~~~~~~~~~~~~~~ + CategoryInfo:NotSpecified:(:) [ ]、MethodInvocationException + FullyQualifiedErrorId:SqlException