2016-06-22 3 views
0

以下のクエリを関数に追加します。 テーブル値(msg.payload.1、msg.payload.2)に挿入します。データベースに2つの異なるmsg.payloadを挿入します。

この関数は、2つの入力(2異なるmsg.payload) を持っているので、私は記述しようとしていますコードは次のとおりです。

var m={ 
    topic: "insert into info values ('"+msg.payload+"','"+msg.payload+"');" 
}; 
return m; 

それが情報テーブル内の2つの行を追加しています。 2つの異なる値を持つ行を1つだけ追加したいとします。

事前

+0

この質問をNode-redメーリングリスト(https://groups.google.com/forum/#!forum/node-red)にお願いすることができます。そこでは、自分のアイデア全体をレイアウトすることができます取りかかっている。また、彼らは全体像に – hardillb

+0

OK感謝を見ることができたときに、誰かがあなたを助けるためにのためにはるかに簡単になります、私は今そこ – aline

答えて

0

おかげで私はあなたがこの機能にデータを供給する2つの異なるノードを持っているし、あなたのINSERT文を構築するためにこれらの別々のメッセージからの値を使用したい適切に理解している場合。

これはNode-REDの仕組みではなく、各メッセージは完全に別々に扱われます(したがって、DBに2行追加された理由)。

2つの別々のメッセージを結合する場合は、状態を維持するためにcontextを使用する必要があります。メッセージの到着時には、メッセージのトピックで通常行われるメッセージを識別する方法も必要ですが、それは固有の機能です。

+0

を働いている私は、このコードを試してみました: (msg.topic ==「CPU」)場合 { のvarメートル= msg.payload; } if(msg.topic == "flahsSize") { var n = msg.payload;トピック: "情報値( '" + m + "'、+" + n "")に挿入: "} var o = { " }; return o; しかし、それは動作しませんでした。私はif条件の場所と混乱しています – aline

+0

変数( 'm'と' n')は、個々のメッセージを処理するのにかかる時間だけ存在します。文脈を使用してメッセージの間に状態を格納するリンクを見てください – hardillb

+0

それはコンテキストメソッドで動作します。 ありがとう – aline

関連する問題