來自用戶的變量值 - sql 查詢我嘗試從用戶那裡獲取變量值並將其用作 SQL 查詢
如何添加到查詢?
謝謝!

回复:來自用戶的變量值 - sql 查詢大家好,
@gzmorgan0 ,非常感謝您的解決方案,效果很好!
@uday_guntupalli @斯坦_科普羅夫斯基@傑夫·珀金森,謝謝大家的支持!
回复:來自用戶的變量值 - sql 查詢@博扎爾,請在 JMP 腳本索引 >> 函數中搜索 Open Database()。 該函數有 2 個必需參數和 2 個選項參數:
- 連接字符串
- 查詢字符串
- <隱形| private> 輸出表的屬性,您可能不想要這個
- <輸出表名>
您一直使用一個字符串作為前兩個參數。當我們沒有可用的測試文件時,很難調試並看到這一點。 刪除 dt_ScadaData 的註釋行以測試它是否運行。 如果您希望 UI 自動關閉,請刪除 NW 的註釋行。 您可能希望它保持打開狀態,以便可以拉出多個表。 如果這就是你想要的,那麼評估插入(qstr ),替換佔位符變量 foo[1] 和 foo[2]。因此,為了以防萬一您打算多次使用 UI,我創建了一個變量 cq_str,它被分配了變量字符串。 所以這應該有效。我通常不使用 Eval Insert Into() 而是使用 cq_str = Eval Insert(q_str); 之類的東西
LB = Lineup Box(1);
LB << Append(
PB_Inputs = Panel Box("User Inputs",
a = Text Edit Box( "" ), //foo[1]
b = Text Edit Box( "" ), // foo[2]
);
);
q_connect = "DRIVER=SQL Server;SERVER=MyServer;Trusted_Connection=Yes";
q_str = "DECLARE @StartDateTime datetime = DATEADD(day, -2, CAST(GETDATE() AS varchar(11)))
DECLARE @EndDateTime datetime = DATEADD(day,0, GETDATE())
EXEC ListData @Criteria=
'<SCADAPORTAL>
<DATA name="\!"PointData\!"" format="\!"Wide\!"" interval="\!"60m\!"">
<WHERE>
<COLUMN name="\!"Point\!"" project="\!"^foo[1]^\!"" value="\!"^foo[2]^\!"/">
</COLUMN>
</WHERE>
</DATA>'
, @StartDateTime=@StartDateTime
, @EndDateTime=@EndDateTime
Scada Data";
MyUI = V List Box(LB,
BB_UserInputUnload = Button Box("Ok",
foo = Eval List( {a << get text, b << get text} );
Show( foo );
cq_str = q_str;
Show(cq_str);
Eval Insert Into(cq_str);
Show(cq_str);
//dt_ScadaData = Open Database(q_connect, cq_str); //this is the runit command
//NW << Close Window(); //this will close the UI don't use if you want to keep ist open
) //end ButtonBox
); //end VListBox
NW = New Window("User Input Collection Window",
VLB = V List Box();
);
VLB << Append(MyUI);</SCADAPORTAL>
回复:來自用戶的變量值 - sql 查詢@uday_guntupalli ,
我發布的是日誌 - 見下文

日誌 -
foo = {"p123", "v123"};
//:*/
LB = Lineup Box(1);
LB << Append(
PB_Inputs = Panel Box("User Inputs",
a = Text Edit Box( "" ), //foo[1]
b = Text Edit Box( "" ), // foo[2]
);
);
MyUI = V List Box(LB,
BB_UserInputUnload = Button Box("Ok",
foo = Eval List( {a << get text, b << get text} );
Show( foo );
q_str ="DRIVER=SQL Server;SERVER=My Server(I changed);Trusted_Connection=Yes",
"DECLARE @StartDateTime datetime = DATEADD(day, -1, CAST(GETDATE() AS varchar(11))) -- 17 Days Back
DECLARE @EndDateTime datetime = DATEADD(day,0, GETDATE())
EXEC ListData @Criteria='
<SCADAPORTAL>
<DATA name="\!"PointData\!"" format="\!"Wide\!"" interval="\!"60m\!"">
<WHERE>
<COLUMN name="\!"Point\!"" project="\!"^foo[1]^\!"" value="\!"^foo[2]^\!"/">
</COLUMN>
</WHERE>
</DATA>'
, @StartDateTime=@StartDateTime
, @EndDateTime=@EndDateTime","Scada Data";
Show(q_str);
q_str = Eval Insert INTO(q_str);
Show(q_str);
),
);
NW = New Window("User Input Collection Window",
VLB = V List Box();
);
VLB << Append(MyUI);
/*:</SCADAPORTAL>你確定我“用引號外的分隔符定義字符串”?請您標記分隔符並告訴我您的意思。
* 問題是當我運行腳本並將值插入到面板盒然後我按按鈕盒(“好的”..),我沒有收到任何數據。
謝謝。
回复:來自用戶的變量值 - sql 查詢@博扎爾,
你還沒有粘貼日誌。 如果您在 JMP 主窗口上按 Ctrl + Shift + L,將打開一個日誌窗口。 或者,在運行腳本之前,在腳本編輯器上右鍵單擊並選擇“顯示嵌入式日誌”,如下所示:

此外,您再次定義帶有引號外分隔符的字符串。 請參閱我之前提供的更正並粘貼日誌。 如果您未能粘貼日誌,我將無法提供任何進一步的指導
回复:來自用戶的變量值 - sql 查詢@uday_guntupalli感謝您的解決方案。
我嘗試採納你的建議,但沒有成功。 
1. 查詢有效 - 當我在腳本中插入數字和不要來自用戶的變量。 例如 - 我插入 p123 代替 foo[1],插入 v123 代替 oo[2]。
dt_ScadaData = Open Database("DRIVER=SQL Server;SERVER=My Server ;Trusted_Connection=Yes",
"DECLARE @StartDateTime datetime = DATEADD(day, -1, CAST(GETDATE() AS varchar(11))) -- 17 Days Back
DECLARE @EndDateTime datetime = DATEADD(day,1, GETDATE())
EXEC ListData @Criteria='
<SCADAPORTAL>
<DATA name="\!"PointData\!"" format="\!"Wide\!"" interval="\!"60m\!"">
<WHERE>
<COLUMN name="\!"Point\!"" project="\!"p123\!"" value="\!"v123\!"/">
</COLUMN>
</WHERE>
</DATA>'
, @StartDateTime=@StartDateTime
, @EndDateTime=@EndDateTime","Scada Data");</SCADAPORTAL>2. 日誌 -
foo = {"P123", "V123"};
//:*/
LB = Lineup Box(1);
LB << Append(
PB_Inputs = Panel Box("User Inputs",
a = Text Edit Box( "" ), //foo[1]
b = Text Edit Box( "" ), // foo[2]
);
);
MyUI = V List Box(LB,
BB_UserInputUnload = Button Box("Ok",
foo = Eval List( {a << get text, b << get text} );
Show( foo );
q_str ="DRIVER=SQL Server;SERVER=My Server;Trusted_Connection=Yes",
"DECLARE @StartDateTime datetime = DATEADD(day, -1, CAST(GETDATE() AS varchar(11))) -- 17 Days Back
DECLARE @EndDateTime datetime = DATEADD(day,0, GETDATE())
EXEC ListData @Criteria='
<SCADAPORTAL>
<DATA name="\!"PointData\!"" format="\!"Wide\!"" interval="\!"60m\!"">
<WHERE>
<COLUMN name="\!"Point\!"" project="\!"^foo[1]^\!"" value="\!"^foo[2]^\!"/">
</COLUMN>
</WHERE>
</DATA>'
, @StartDateTime=@StartDateTime
, @EndDateTime=@EndDateTime","Scada Data";
Show(q_str);
q_str = Eval Insert INTO(q_str);
Show(q_str);
),
);
NW = New Window("User Input Collection Window",
VLB = V List Box();
);
VLB << Append(MyUI);
/*:</SCADAPORTAL>3. 如果我理解正確的話,你能看到第二章中我應用你的建議的腳本嗎?
回复:來自用戶的變量值 - sql 查詢@博扎爾,
您需要查看我們已經給您的建議並嘗試遵循它。 請幫助我們幫助您。 當你說它不起作用時,我們不知道或看不到發生了什麼。 如果您能清楚地說明您所說的內容以及您認為它不起作用的原因,這將有助於我們排除故障。
1. 您是否驗證了查詢本身是否有效?
2.請粘貼日誌
3. 您沒有像我之前展示的那樣評估字符串。 請在構造字符串後通過調用它來評估該字符串。
LB = Lineup Box(1);
LB << Append(
PB_Inputs = Panel Box("User Inputs",
a = Text Edit Box( "" ), //foo[1]
b = Text Edit Box( "" ), // foo[2]
);
);
MyUI = V List Box(LB,
BB_UserInputUnload = Button Box("Ok",
foo = Eval List( {a << get text, b << get text} );
Show( foo );
q_str = "DRIVER=SQL Server;SERVER=My Server;Trusted_Connection=Yes,
DECLARE @StartDateTime datetime = DATEADD(day, -2, CAST(GETDATE() AS varchar(11)))
DECLARE @EndDateTime datetime = DATEADD(day,0, GETDATE())
EXEC ListData @Criteria='
<SCADAPORTAL>
<DATA name="\!"PointData\!"" format="\!"Wide\!"" interval="\!"60m\!"">
<WHERE>
<COLUMN name="\!"Point\!"" project="\!"^foo[1]^\!"" value="\!"^foo[2]^\!"/">
</COLUMN>
</WHERE>
</DATA>'
, @StartDateTime=@StartDateTime
, @EndDateTime=@EndDateTime
Scada Data" ;
Show(q_str);
Eval Insert(q_str);
Show(q_str);
q_str; // evaluating the query you constructed
),
);
NW = New Window("User Input Collection Window",
VLB = V List Box();
);
VLB << Append(MyUI);</SCADAPORTAL>
回复:來自用戶的變量值 - sql 查詢你好@uday_guntupalli ,
該腳本@gzmorgan0發送給我,不起作用 - 請參閱下面的 JSL
當然,我將服務器更換為我的服務器。
請幫助修復腳本。
謝謝。
LB = Lineup Box(1);
LB << Append(
PB_Inputs = Panel Box("User Inputs",
a = Text Edit Box( "" ), //foo[1]
b = Text Edit Box( "" ), // foo[2]
);
);
MyUI = V List Box(LB,
BB_UserInputUnload = Button Box("Ok",
foo = Eval List( {a << get text, b << get text} );
Show( foo );
q_str = "DRIVER=SQL Server;SERVER=My Server;Trusted_Connection=Yes,
DECLARE @StartDateTime datetime = DATEADD(day, -2, CAST(GETDATE() AS varchar(11)))
DECLARE @EndDateTime datetime = DATEADD(day,0, GETDATE())
EXEC ListData @Criteria='
<SCADAPORTAL>
<DATA name="\!"PointData\!"" format="\!"Wide\!"" interval="\!"60m\!"">
<WHERE>
<COLUMN name="\!"Point\!"" project="\!"^foo[1]^\!"" value="\!"^foo[2]^\!"/">
</COLUMN>
</WHERE>
</DATA>'
, @StartDateTime=@StartDateTime
, @EndDateTime=@EndDateTime
Scada Data" ;
Show(q_str);
Eval Insert(q_str);
Show(q_str);
),
);
NW = New Window("User Input Collection Window",
VLB = V List Box();
);
VLB << Append(MyUI);</SCADAPORTAL>
回复:來自用戶的變量值 - sql 查詢你好@uday_guntupalli ,
該腳本@gzmorgan0發送給我,不起作用 - 請參閱下面的 JSL
當然,我將服務器更換為我的服務器。
請幫助修復腳本。
謝謝。
LB = Lineup Box(1);
LB << Append(
PB_Inputs = Panel Box("User Inputs",
a = Text Edit Box( "" ), //foo[1]
b = Text Edit Box( "" ), // foo[2]
);
);
MyUI = V List Box(LB,
BB_UserInputUnload = Button Box("Ok",
foo = Eval List( {a << get text, b << get text} );
Show( foo );
q_str = "DRIVER=SQL Server;SERVER=My Server;Trusted_Connection=Yes,
DECLARE @StartDateTime datetime = DATEADD(day, -2, CAST(GETDATE() AS varchar(11)))
DECLARE @EndDateTime datetime = DATEADD(day,0, GETDATE())
EXEC ListData @Criteria='
<SCADAPORTAL>
<DATA name="\!"PointData\!"" format="\!"Wide\!"" interval="\!"60m\!"">
<WHERE>
<COLUMN name="\!"Point\!"" project="\!"^foo[1]^\!"" value="\!"^foo[2]^\!"/">
</COLUMN>
</WHERE>
</DATA>'
, @StartDateTime=@StartDateTime
, @EndDateTime=@EndDateTime
Scada Data" ;
Show(q_str);
Eval Insert(q_str);
Show(q_str);
),
);
NW = New Window("User Input Collection Window",
VLB = V List Box();
);
VLB << Append(MyUI);</SCADAPORTAL>回复:來自用戶的變量值 - sql 查詢你好@博扎爾,
您運行的 SQL Server 版本是什麼?
您的 SQL Server 評估版可能已過期。
您能否驗證您的 SQL Server 沒有在評估模式下運行?
謝謝,
斯坦
回复:來自用戶的變量值 - sql 查詢請發布您的日誌。 該腳本沒有運行查詢,它只是將查詢命令的結果寫入日誌。
您使用的是哪個版本的 JMP?JMP 有一個查詢生成器。您可以創建該查詢來提示輸入您需要的兩個字段。 然後您可以保存腳本或查詢。一個查詢有多個失敗點,
- 查詢語法不正確,請注意大小寫可能很重要。因此,如果用戶輸入 harry,但 db 字段為 HARRY,則結果將為空。SQL 還需要用空格或特殊字符將值引起來的引號。 所以第一的,讓腳本在沒有提示的情況下工作,即對提示的值進行硬編碼並運行代碼部分 dtScadaData = Open Database(等)
- 一旦硬編碼腳本工作,然後嘗試在提示符下準確輸入上面硬編碼的內容。還打印出字符串並比較.mple,
- 查詢登錄可能是一個失敗點
- 您到數據庫驅動程序的連接字符串可能與其他用戶不同。例如,我將 Excel 的驅動程序設置為 Excel Files,其他人可能有不同的名稱。
- 其他用戶權限可能與您的不同,他們可能無權訪問文件/表。
- 我確信還有更多,
我看到@uday_guntupalli剛剛回應。 所以我現在就停下來。
回复:來自用戶的變量值 - sql 查詢@博扎爾,
當你說它不起作用時,你能解釋一下你所看到的嗎?@gzmorgan0發現我的錯誤是正確的,我應該使用 Eval Insert Into 而不是 Eval Insert :

另外,您是否替換了上面顯示的字符串中的服務器名稱?
此外,到目前為止您只是構建了字符串,您需要在構建後實際運行該字符串才能查看結果,如下面來自腳本索引的示例所示:
ex = "Today is ^As Date( Today())^";
Eval Insert Into( ex );
ex;
回复:來自用戶的變量值 - sql 查詢還是不行:(
回复:來自用戶的變量值 - sql 查詢我認為你需要更改代碼q_str = 評估插入(q_str)或者評估插入(q_str) 。 Eval Insert Into() 會更改其參數的值,並且它必須是像 q_str 這樣的存儲值; Eval Insert() 僅返回一個字符串,它不會更改其參數。
Show(q_str);
q_str = Eval Insert(q_str);
Show(q_str);
),
);
NW = New Window("User Input Collection Window",
VLB = V List Box();
);
VLB << Append(MyUI);回复:來自用戶的變量值 - sql 查詢@uday_guntupalli
你好,
感謝您的解決方案和解釋。
我嘗試運行腳本並將數據插入框面板中。 當我嘗試按“確定”按鈕時,沒有任何反應。
請參閱下面的日誌
LB = Lineup Box(1);
LB << Append(
PB_Inputs = Panel Box("User Inputs",
a = Text Edit Box( "" ), //foo[1]
b = Text Edit Box( "" ), // foo[2]
);
);
MyUI = V List Box(LB,
BB_UserInputUnload = Button Box("Ok",
foo = Eval List( {a << get text, b << get text} );
Show( foo );
q_str = "DRIVER=SQL Server;SERVER=My Server;Trusted_Connection=Yes,
DECLARE @StartDateTime datetime = DATEADD(day, -2, CAST(GETDATE() AS varchar(11)))
DECLARE @EndDateTime datetime = DATEADD(day,0, GETDATE())
EXEC ListData @Criteria='
<SCADAPORTAL>
<DATA name="\!"PointData\!"" format="\!"Wide\!"" interval="\!"60m\!"">
<WHERE>
<COLUMN name="\!"Point\!"" project="\!"^foo[1]^\!"" value="\!"^foo[2]^\!"/">
</COLUMN>
</WHERE>
</DATA>'
, @StartDateTime=@StartDateTime
, @EndDateTime=@EndDateTime
Scada Data" ;
Show(q_str);
Eval Insert(q_str);
Show(q_str);
),
);
NW = New Window("User Input Collection Window",
VLB = V List Box();
);
VLB << Append(MyUI);</SCADAPORTAL>回复:來自用戶的變量值 - sql 查詢@博扎爾,
我認為您遇到錯誤的原因是您的字符串包含逗號和其他分隔符。 我重寫了你的腳本,並在下面提供:
LB = Lineup Box(1);
LB << Append(
PB_Inputs = Panel Box("User Inputs",
a = Text Edit Box( "" ), //foo[1]
b = Text Edit Box( "" ), // foo[2]
);
);
MyUI = V List Box(LB,
BB_UserInputUnload = Button Box("Ok",
foo = Eval List( {a << get text, b << get text} );
Show( foo );
q_str = "DRIVER=SQL Server;SERVER=MyServer;Trusted_Connection=Yes,
DECLARE @StartDateTime datetime = DATEADD(day, -2, CAST(GETDATE() AS varchar(11)))
DECLARE @EndDateTime datetime = DATEADD(day,0, GETDATE())
EXEC ListData @Criteria='
<SCADAPORTAL>
<DATA name="\!"PointData\!"" format="\!"Wide\!"" interval="\!"60m\!"">
<WHERE>
<COLUMN name="\!"Point\!"" project="\!"^foo[1]^\!"" value="\!"^foo[2]^\!"/">
</COLUMN>
</WHERE>
</DATA>'
, @StartDateTime=@StartDateTime
, @EndDateTime=@EndDateTime
Scada Data" ;
Show(q_str);
Eval Insert(q_str);
Show(q_str);
),
);
NW = New Window("User Input Collection Window",
VLB = V List Box();
);
VLB << Append(MyUI);</SCADAPORTAL>另外,有幾點建議:
1、搭建展示盒時,將它們分開,獨立搭建
2. 當使用像 Eval 這樣的語句時,總是單獨定義你的字符串或語句,它將幫助你隔離錯誤並查看哪一行代碼引入了錯誤
希望這可以幫助。
回复:來自用戶的變量值 - sql 查詢@gzmorgan0
@uday_guntupalli
@傑夫·珀金森
這是日誌——
foo = {"DS", "FD"};
Name Unresolved: erver in access or evaluation of 'erver' , erver
//:*/
Names default to here(1);
uservalue = New Window("Insert Data",
a = Text Edit Box(""), //foo[1]
b = Text Edit Box(""), //foo[2]
Button Box("OK",
foo = Eval List({ a << get text, b << get text});
show(foo);
q_str = EvalInsert("DRIVER=SQL Server;SERVER=-----;Trusted_Connection=Yes",
"DECLARE @StartDateTime datetime = DATEADD(day, -2, CAST(GETDATE() AS varchar(11)))
DECLARE @EndDateTime datetime = DATEADD(day,0, GETDATE())
EXEC ListData @Criteria='
<SCADAPORTAL>
<DATA name="\!"PointData\!"" format="\!"Wide\!"" interval="\!"60m\!"">
<WHERE>
<COLUMN name="\!"Point\!"" project="\!"^foo[1]^\!"" value="\!"^foo[2]^\!"/">
</COLUMN>
</WHERE>
</DATA>'
, @StartDateTime=@StartDateTime
, @EndDateTime=@EndDateTime","Scada Data");
show(q_str);
wait(0);
uservalue << close window();
)
);
/*:
DisplayBox[]</SCADAPORTAL>
回复:來自用戶的變量值 - sql 查詢@gzmorgan0
@uday_guntupalli
@傑夫·珀金森
大家好,
感謝您的解決方案!
該腳本仍然無法工作:(
當我嘗試插入參數時,它會顯示以下消息 - “名稱未解析: erver 正在訪問或評估 'erver' ,erver”
雖然我使用以下命令運行腳本 -名稱默認為此處(1);
Names default to here(1);
uservalue = New Window("Insert Data",
a = Text Edit Box(""), //foo[1]
b = Text Edit Box(""), //foo[2]
Button Box("OK",
foo = Eval List({ a << get text, b << get text});
show(foo);
q_str = EvalInsert("DRIVER=SQL Server;SERVER= ----;Trusted_Connection=Yes",
"DECLARE @StartDateTime datetime = DATEADD(day, -2, CAST(GETDATE() AS varchar(11)))
DECLARE @EndDateTime datetime = DATEADD(day,0, GETDATE())
EXEC ListData @Criteria='
<SCADAPORTAL>
<DATA name="\!"PointData\!"" format="\!"Wide\!"" interval="\!"60m\!"">
<WHERE>
<COLUMN name="\!"Point\!"" project="\!"^foo[1]^\!"" value="\!"^foo[2]^\!"/">
</COLUMN>
</WHERE>
</DATA>'
, @StartDateTime=@StartDateTime
, @EndDateTime=@EndDateTime","Scada Data");
show(q_str);
wait(0);
uservalue << close window();
)
);</SCADAPORTAL>
回复:來自用戶的變量值 - sql 查詢下面的腳本有兩部分:模式對話框和非模式對話框。
Names default to here(1);
//Modal method
foo = New Window("Insert Data", <<MODAL></MODAL>
'
etc. ");
Show(q_str);
//uncomment the line below after you have tested the string is correct
//dt_ScadaData = Open Database("DRIVER=SQL Server; SERVER=....", q_str);
//+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
// Non-Modal Method
//--- Show commands are written to teh LOG not the embedded log
uservalue = New Window("Insert Data",
a = Text Edit Box(""), //foo[1]
b = Text Edit Box(""), //foo[2]
Button Box("OK",
foo = Eval List({ a << get text, b << get text});
show(foo);
q_str = EvalInsert("DECLARE
@StartDateTime datetime = DATEADD( etc.
'
etc. ");
show(q_str);
wait(0);
uservalue << close window();
)//end ButtonBox
); //end New Window
這是日誌中寫入的結果,我輸入了 cat 和chick,然後輸入 bull 和cow。

回复:來自用戶的變量值 - sql 查詢@博扎爾,用戶值窗口是非模態的。 因此,新窗口下方的 JSL 會在用戶有機會選擇按鈕之前嘗試運行。
您知道如何使對話框模式化,或者如何將查詢作為“確定”按鈕的一部分運行嗎?
回复:來自用戶的變量值 - sql 查詢@博扎爾,
請發布您使用此處顯示的“JSL”塊嘗試過的內容,並在可能的情況下提供日誌快照,這樣社區中的用戶就可以嘗試並了解哪些內容不適合您。
回复:來自用戶的變量值 - sql 查詢@傑夫·珀金森
@傑夫·珀金森寫道:
@uday_guntupalli的建議代替()是一個很好的。
您可能想熟悉的另一個功能是評估插入() 。 它可以將變量值插入文本字符串。
myvar="a";
response=eval insert("The correct answer is: ^myvar^");
print(response);這是該代碼的日誌:
/*:
//:*/
myvar="a";
response=eval insert("The correct answer is: ^myvar^");
print(response);
/*:
"The correct answer is: a"
感謝您的解決方案。
抱歉,我正在嘗試,但沒成功。
拜託,你能給我解釋一下嗎?
回复:來自用戶的變量值 - sql 查詢@uday_guntupalli的建議代替()是一個很好的。
您可能想熟悉的另一個功能是評估插入() 。 它可以將變量值插入文本字符串。
myvar="a";
response=eval insert("The correct answer is: ^myvar^");
print(response);
這是該代碼的日誌:
/*:
//:*/
myvar="a";
response=eval insert("The correct answer is: ^myvar^");
print(response);
/*:
"The correct answer is: a"回复:來自用戶的變量值 - sql 查詢@博扎爾,
實現您想要的效果的一種方法是使用 Substitiute()。 例如
WhereStatement = " WHERE [ReadTime] >= DateTimeStart and [ReadTime] <= DateTimeEnd ";
WhereStatement = Substitute(WhereStatement, "DateTimeStart", "'" || MyStartTime ||"'", "DateTimeEnd", "'" || MyEndTime||"'");
在上面顯示的示例中,查詢中的 DateTimeStart 和 DateTimeEnd 被替換為基於用戶輸入的 MyStartTime 和 MyEndTime。
同樣,在您的情況下,您可以首先將 SqlQuery 初始化為單獨的字符串,然後使用 Substitute() 替換您想要的字符串。 完成此操作並獲得所需的查詢後,即可從數據庫中查詢。 讓我知道這是否有幫助。 對未來的小建議是,請使用“JSL”塊發布 JSL,以便人們可以輕鬆使用您發布的腳本來提供示例