多くの情報を内部に持つSQL Serverデータベースがあります。SQL Server - テーブルを更新し、更新された行を返します。
単一のクエリ(問題はありませんでした)で上位50行を選択したいのですが、次に列をfalseからtrueに更新したいので、次回は同じコードを選択しません次のようになります。
string Command = "UPDATE HubCommands SET [Alreadytaken] = 'true' FROM (SELECT TOP 50 [CommandId],[DeviceId],[Commandtext], [HashCommand],[UserId] FROM HubCommands) I WHERE [HubId] = '18353fe9-82fd-4ac2-a078-51c199d9072b'";
using (SqlConnection myConnection = new SqlConnection(SqlConnection))
{
using (SqlDataAdapter myDataAdapter = new SqlDataAdapter(Command, myConnection))
{
DataTable dtResult = new DataTable();
myDataAdapter.Fill(dtResult);
foreach (DataRow row in dtResult.Rows)
{
Guid CommandId, DeviceId, UserId;
Guid.TryParse(row["CommandId"].ToString(), out CommandId);
Guid.TryParse(row["DeviceId"].ToString(), out DeviceId);
Guid.TryParse(row["UserId"].ToString(), out UserId);
Console.WriteLine("CommandId" + CommandId);
}
}
}
このコードでは、作業を行い、そしてそれは私が更新するために、それを聞いて何を更新しますが、私は、データテーブルに何を取得していない、そのことは常に更新しますが選択されていませんように。
私が通常の選択をすると、正常に動作し、情報が得られます。
更新プログラムを使用してデータを取得する方法はありますか?
0and1情報をありがとう、私はそれを知らなかった。しかし、これはまだ私にいかなる情報も返さない。なぜなのかご存知ですか?ありがとう –
@ AlonMこれは更新ステートメントです。更新されたレコードを返却しますか? – user3185569
はい。私はそれらが私のコードでそれらと一緒に作業することができますので、私はこのコードでコンソールに情報を書き込もうとしているように、ありがとう! –