0

我的 SQL 代码为我提供了超过 10 000 行,每行都包含客户端 ID、名称、地址等。在我的 PowerBuilder 10.5 窗口中,我设置了 DataWindow,我在其中使用 id 作为检索参数来检索我的 SQL 代码。我有一个单行编辑(sle_id),用户可以在其中编写一个 id 并通过它进行搜索。我发现我所有的客户都有 8 个字符的 id 长度,并且以“46XXXXXXXX”或“7052XXXX”开头。因此,为了优化我的检索时间,我想在位于 PowerBuilder 窗口中的“开始”按钮的单击事件中编写代码,该代码将首先检查 id 是否以以下两个选项之一开头:“46 ...”或“7052……”。我假设我需要使用字符的长度?例如,这就是我想要的...

IF sle_id.text STARTS with 46 or 7052 THEN retrieve
ELSE MessageBox ("INFO", "Your id must have begin with either 32 or 7052")
END IF;

当然,我需要比“开始于”更好的东西。非常感谢所有的帮助!

4

2 回答 2

1

powerbuilder中有一些字符串函数。我认为你需要这个:

If( left(sle_id.text, 2) = "46" or left(sle_id.text, 4) = "7052" ) then

此致

加博尔

于 2013-07-09T22:00:08.790 回答
0

我认为您正在尝试解决错误的问题。您的数据库应该有一个关于客户端 ID 的索引。如果客户端 ID 是唯一的,则使用唯一索引。

于 2013-07-11T20:11:56.907 回答