Level Extreme platform
Subscription
Corporate profile
Products & Services
Support
Legal
Français
Update statement doesn't let me Update MEMO > 254 char
Message
 
 
To
23/01/2003 09:20:38
General information
Forum:
Visual FoxPro
Category:
Databases,Tables, Views, Indexing and SQL syntax
Miscellaneous
Thread ID:
00744491
Message ID:
00744720
Views:
24
This message has been marked as the solution to the initial question of the thread.
You're putting words in my mouth. Neither Fred nor I sad that you cannot update memo field longer than 255 characters or with data longer than 255 characters. All we're saying that it cannot be done the way you're doing it because of VFP limit on the size of string literal. Oracle is irrelevant in this case.
Fred gave you one way to work around this limit. There is another way to achive the same. You can use parameter as shown below.
ltDt = ctot('22/01/2003 03:16:00 PM')
lcNewmemo = < ... >
csql_mess = [update orgv_hist set ] + ; 
 [ hange_request = change_request + ?lcNewMemo] + ; 
 [ here timestamp = ?ltDt]
>So what you and Fred are saying is that there is NO way to do an Update statement sent through SQLEXEC() that can update a MEMO field that requires text larger than 255 char! The same update statement using an SQLEXEC() to Oracle back end with varchar(4000) worked just fine. But when using a DBC accessed through ODBC with the same SQLEXEC() Update statement, I will have to do an Update statement over and over again to load in the MEMO field. I hope you can understand my astonishment...
>
>Here is the exact code that worked in Oracle (VARCHAR(4000)) but not in Foxpro DBC (MEMO)
>
>CSQL is a variable - it contains the following exactly - there was no error assigning this to CSQL
>
>Insert into orgv_hist (userid,timestamp, CHANGE_RESPONSE,request_closed,ref_no) VALUES ( '0RN3J7',{^2003/1/23 09:18:34},'User Abort/Partial Results New ORGVIEW Report for Stats OrgView Statistics(CR)(LF)********* SQL GENERATED: (CR)(LF)select * from xxx into table c:\temp\tmp_OrgV\results(CR)(LF)******** Error Mess: (CR)(LF)User Abort/Partial Results - Successful Report...(CR)(LF)******** Internal SQL before processing: (CR)(LF)select * from cfssu_civ_person(CR)(LF)',{^2003/1/23 09:18:34},0)
>
>There are no illegal chars in this statement (like chr(13) or Chr(10))
>
>Now when I run this to Oracle back end using SQLEXEC(1,CSQL) it runs fine
>but for the same table using FOXPRO DBC it gives an error - yes because CHANGE_REQUEST is too long. There is no other way for me to send an SQLEXEC statement than this, so according to you I have to send an update over and over again to fill in the CHANGE_REQUEST field...
--sb--
Previous
Next
Reply
Map
View

Click here to load this message in the networking platform