Stuck on native database functions
Terence Heaford
lheaford at icloud.com
Wed Jul 7 03:28:02 EDT 2021
I have now tried your method with the tValues array directly and by deconstructing the array as below and it does not work. I have a recollection of not being able to get this to work with an array which is why I did the way I did.
All the best
Terry
put q(tAccountName) into tAccountName
put q(tValues["uniqueID"]) into tUniqueID
put q(tValues["date"]) into tDate
put q(tValues["type"]) into tType
put q(tValues["description"]) into tDescription
put q(tValues["amount"]) into tAmount
put q(tValues["balance"]) into tBalance
put q(tValues["category"]) into tCategory
put merge("[[tUniqueID]],[[tDate]],[[tType]],[[tDescription]],[[tAmount]],[[tBalance]],[[tCategory]]”) into tValues
put ":1,:2,:3,:4,:5,:6,:7" into tPlaceHolders
put merge("INSERT INTO [[tAccountName]] VALUES([[tPlaceHolders]])") into tSQL
put tSQL & " " & tValues
revExecuteSQL dbGetID(),tSQL,tValues
> On 7 Jul 2021, at 07:52, Terence Heaford via use-livecode <use-livecode at lists.runrev.com> wrote:
>
> Here’s an example I have been using, not sure whether it will help:
>
> function dbAddTransaction tAccountName,tValues
>
> put q(tAccountName) into tAccountName
>
> put q(tValues["uniqueID"]) into tUniqueID
>
> put q(tValues["date"]) into tDate
>
> put q(tValues["type"]) into tType
>
> put q(tValues["description"]) into tDescription
>
> put q(tValues["amount"]) into tAmount
>
> put q(tValues["balance"]) into tBalance
>
> put q(tValues["category"]) into tCategory
>
> put "uniqueID,date,type,description,amount,balance,category" into tFields
>
> put merge("[[tUniqueID]],[[tDate]],[[tType]],[[tDescription]],[[tAmount]],[[tBalance]],[[tCategory]]")into tValues
>
> put merge("INSERT INTO [[tAccountName]] ([[tFields]]) VALUES([[tValues]])") into tSQL
>
> revExecuteSQL dbGetID(), tSQL
>
> put the result into tErr
>
> return tErr
>
> end dbAddTransaction
>
> -------------------------
>
> function dbEscapeSqlite tText
>
> replace "'" with "''" in tText
>
> return tText
>
> end dbEscapeSqlite
>
> -------------------
>
> function q tText
>
> return "'" & dbEscapeSqlite(tText) & "'"
>
> end q
>
> -------------------
>
>
>
>
>> On 7 Jul 2021, at 00:06, Bob Sneidar via use-livecode <use-livecode at lists.runrev.com> wrote:
>>
>> Hi all.
>>
>> I assemble an SQL statement that looks like this:
>>
>> insert into ObjectProperties (recordid,rect,controlname,owner,visible) VALUES (:1,:2,:3,:4,:5)
>>
>> I then execute this statement:
>>
>> revExecuteSQL tDBID, tInsertSQL, aRecordData
>>
>> I get records but with no data in them. I checked aRecordData and it has all 5 columns as keys and data in each of them.
>>
>> I am at a complete loss. I was sure this was working before, now it is not.
>>
>> Bob S
>>
>>
>> _______________________________________________
>> use-livecode mailing list
>> use-livecode at lists.runrev.com
>> Please visit this url to subscribe, unsubscribe and manage your subscription preferences:
>> http://lists.runrev.com/mailman/listinfo/use-livecode
>
> _______________________________________________
> use-livecode mailing list
> use-livecode at lists.runrev.com
> Please visit this url to subscribe, unsubscribe and manage your subscription preferences:
> http://lists.runrev.com/mailman/listinfo/use-livecode
More information about the use-livecode
mailing list