0

コロナでネイティブ テキスト フィールドから sqlite データベースにデータを保存するのに苦労しました。

関連するコードを次に示します。

    function printrecord()
        for row in db:nrows("SELECT * FROM test") do
           t = display.newText(row.pname .. " " .. row.age .. " " .. row.desc, 20, 30 * row.id, null, 16)
           t:setTextColor(255,255,255)
        end
    end

    newData = native.newTextField ( 20, _H - 90, 280, 30 )
    newData.inputType = "text"

    saveData = function ( event )
        textString = newData.text
        db:exec( [[ INSERT INTO test VALUES (NULL, textString, 30, "unknown")]] )
        t:removeSelf()
        t = nil
        printrecord()
    end

    savebutton = widget.newButton {
        default = "buttonGreen.png",
        over = "buttonGreenOver.png",
        label = "Save",
        embose = true,
        onRelease = saveData
        }

textStringfromを「これは文字列です」のような文字列に変更しようとすると、db:exec( [[ INSERT INTO test VALUES (NULL, textString, 30, "unknown")]] )うまくいくようです。誰か助けてもらえますか?

4

1 に答える 1

0

Lua は、二重括弧内の textString を評価しません...これをコロナで実行して、違いを確認します。

textString="hello world"


print([[ INSERT INTO test VALUES (NULL, textString, 30, "unknown")]])

print([[ INSERT INTO test VALUES (NULL,"]]..textString..[[",30,"unknown")]])

お役に立てれば。

于 2012-12-05T02:45:51.617 に答える