JSL - 從清單中進行多重選擇以插入 SQL 請求<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />你好,我有一個小問題,
我建立了一個列表,然後建立了一個列錶框,可以從此列表中選擇不同的值,我想將我選擇的值插入 SQL 請求中。
但這不起作用,這是我的腳本:
選擇 = {"rouge","vert","bleu", "jaune"};
召回標誌 = 0;
NW=新視窗(“測試”,
H 列錶框( 文字方塊( "選擇顏色" ), y = 列錶框( 選擇 ) ),
V 列錶框(
按鈕框(“確定”,
選擇 = (y << getselected);
::recall_flag = 1;
西北 << 關閉窗口;
)
)
);
選擇=“選擇...
從 ...
WHERE 顏色 IN '" || 選擇 || "' " ;
你知道這個問題嗎?
謝謝您的回答 !
回覆:JSL - 從清單中進行多重選擇以插入 SQL 請求這串聯項目函數僅接受字串作為參數,因此不適用於數字列表。
我不知道您可以在前兩個參數之後繼續添加替換參數。感謝 MS 向我展示了這個技巧!
回覆:JSL - 從清單中進行多重選擇以插入 SQL 請求在原始範例中的列錶框上下文中,項目必須是列錶框中可選擇的字串。 也就是說,數字無論如何都需要提前轉換為字串。
但假設列表給出為 choice = {12,156,13,25},那麼 SQL 字串可以像這樣連接:
選擇= { 12 , 156 , 13 , 25 } ;
選擇= “選擇...從...其中ID” ||代替(字元(選擇) , “{” , “(” , “}” , “)” , ” “ , ”” ) ;
回覆:JSL - 從清單中進行多重選擇以插入 SQL 請求你好,
是的,concat 函數也適用,但僅適用於字串,不適用於數字。 真的 ?
您對數字清單有什麼建議嗎?
例如:而不是 choice = {"rouge", "vert", "bleu", "jaune"};我們有像 choice = {12,156,13,25} 這樣的數值;
最後我們想要:
選擇= 「選擇 ...FROM ...WHERE ID IN (12,156,13,25)
回覆:JSL - 從清單中進行多重選擇以插入 SQL 請求有一個漂亮的函數叫做串聯項目它可用於透過一行建立您的清單:
選擇= { “胭脂” , “垂直” , “藍色” , “黃” } ;
召回標誌= 0 ;
西北=新窗戶( “測試” ,
<<莫代爾,
H 列錶框(文字方塊( “選擇顏色” ) , y =列錶框(選擇) ) ,
V 列錶框(
按鈕盒( “好的” ,
選擇= ( y <<被選中) ;
::召回標誌= 1 ;
)
)
) ;
清單中的選擇= “('” ||串聯項目(選擇, “‘、‘” ) || “')” ;
選擇= “選擇...從...其中的顏色” ||清單中的選擇;
回覆:JSL - 從清單中進行多重選擇以插入 SQL 請求謝謝紀堯姆,功能!
感謝tou女士!
回覆:JSL - 從清單中進行多重選擇以插入 SQL 請求除了將列表轉換為字串(gbu 在上面很好地解決了這一問題)之外,還存在在進行選擇之前評估選擇的問題,除非視窗是模態的或者選擇字串的構建移至 OK-按鈕腳本。
模態視窗範例:
選擇= { “胭脂” , “垂直” , “藍色” , “黃” } ;
召回標誌= 0 ;
西北=新窗戶( “測試” ,<<莫代爾,
H 列錶框(文字方塊( “選擇顏色” ) , y =列錶框(選擇) ) ,
V 列錶框(
按鈕盒( “好的” ,
選擇= ( y <<被選中) ;
::召回標誌= 1 ;
)
)
) ;
選擇= “'” ||選擇[ 1 ] || “'” ; // 第一個選擇的項目
// 如果有多個項目,則新增更多項目
為了(我= 2 ,我<= N 項(選擇) ,我++,
選擇=選擇|| “,” ||選擇[我] || “'”
) ;
選擇= “選擇...從...其中的顏色(” ||選擇|| “)” ;
非模態範例:
選擇= { “胭脂” , “垂直” , “藍色” , “黃” } ;
召回標誌= 0 ;
西北=新窗戶( “測試” , //<<模態,
H 列錶框(文字方塊( “選擇顏色” ) , y =列錶框(選擇) ) ,
V 列錶框(
按鈕盒( “好的” ,
選擇= ( y <<被選中) ;
::召回標誌= 1 ;
選擇= “'” ||選擇[ 1 ] || “'” ;
為了(我= 2 ,我<= N 項(選擇) ,我++,
選擇=選擇|| “,” ||選擇[我] || “'”
);
選擇= “選擇...從...其中的顏色(” ||選擇|| “)” ;
西北<<關閉視窗;
)
)
) ;
回覆:JSL - 從清單中進行多重選擇以插入 SQL 請求致敬安托萬,
你可以這樣做:
===========================================
選擇 = {"rouge","vert","bleu", "jaune"};
召回標誌 = 0;
NW=新視窗(“測試”,
H 列錶框( 文字方塊( "選擇顏色" ), y = 列錶框( 選擇 ) ),
V 列錶框(
按鈕框(“確定”,
選擇 = (y << getselected);
::recall_flag = 1;
西北 << 關閉窗口;
)
)
);
選擇=“選擇...
從 ...
WHERE 顏色在 'strchoice' 中」;
/* Step1 : 使用循環從列表中建立一個字串 - Creation d'une chaine de carcatère au format attendu en bouclant sur le nombre de valeurs */
string_color = "('" || 選擇[1] || "'";
For( i = 2, i <= Nitems(選擇), i++,
字串顏色 = 字串顏色 || 「,」||選擇|| “'”
);
字串顏色 = 字串顏色 || “)”;
/* Step2 : 用 string_color 的值取代 stingchoice */
選擇=替代(選擇,“'strchoice'”,string_color);
===========================================
親切,
紀堯姆