2010-07-12 80 views
0

我有一個PHP進程作爲JavaScript AJAX請求的結果運行,它可能會運行一段時間,並且會不時產生數據。從可用性的角度來看,我希望能夠在JavaScript生成後立即將數據返回給JavaScript,但這似乎是不可能的。將第二個字符串連接到已包含字符串的行上

我的解決辦法是將其寫入到SQLite數據庫和有運行說一旦秒(作爲另一AJAX請求的結果)的另一PHP腳本以迄今所產生的數據,並返回,從而允許用戶及時更新進展情況。

假設這是一個合理的方法,數據寫入程序需要能夠將一個字符串追加到已存在的行內容中。我不知道SQL很好,但以下似乎工作:

create table str_table (mystr string); 
insert into str_table (mystr) values ("first part of string."); 
update str_table set mystr = ((select mystr from str_table) || " Second part of string."); 

是否有更直接的方式來追加到mystr?

數據讀取器需要獲取mystr的內容然後清除它。我想我可以這樣做:

begin transaction 
select mystr from str_table; 
update str_table set mystr = null; 
end transaction 

但是有可能在單個語句中做到這一點嗎?

謝謝。

回答

0

更新查詢是正確的方法,SQL中無法獲取和設置。

+0

好的感謝您的獲取和設置的信息。 – clothears 2010-07-12 13:18:20

0

您應該使用簡單的UPDATE查詢。將額外數據連接到一個字段可以執行如下:

UPDATE table SET field = field || " Second part of string." 

這將附加「字符串的第二部分」。到字段列,爲您指定的表中的每一行。

+0

啊謝謝 - 這是一個很好的簡化! – clothears 2010-07-12 13:20:06