Delphi XE2でDataSnapサーバーを構築していますが、クライアントから送信されたJSONオブジェクトをデータベースに挿入するための最良の方法を見つけるのに苦労しています。
受信しているオブジェクトの形式は次のとおりです。
{"PK":0,"FIELD1":"EXAMPLE","FIELD2":5, "DATE":""}
私が見つけた解決策は次のコードでした
with qryDBMethods do
begin
SQL.Text := 'SELECT * FROM Table';
Open;
Append;
FieldByName('PK') .AsInteger := StrToInt(newId.ToString)
FieldByName('FIELD1').AsString := Object.Get('FIELD1').JsonValue.Value;
FieldByName('FIELD2').AsInteger := StrToInt(Object.Get('FIELD2').JsonValue.Value);
FieldByName('DATE') .AsDateTime:= Now;
Post;
その後、クエリコンポーネントをJSONオブジェクトにしてクライアントに返しますが、問題は、これが高密度のテーブルを持つ大きなアプリケーションになるため、何かを挿入するたびに「SELECT*」を実行することです。理想的ではありません。これを行うための最良の方法は何ですか?