1

提前致谢。

我的客户收到了这件特定商品的发货,该商品具有基于他们的要求的 ID。在这个特定的请求项目上,ID 定义如下。

  1. 条码 # - 机器生成
  2. 可见# - 手动序列号

在项目本身上,条形码的实际值不显示,而是它们应该是等效的 visibleid。

        Example
        -------

||||||||| <Barcode # - C007587>
 C000001  <Visible # - C000001>

这个项目的制造商虽然生成并打印了条形码#和可见#,但数字确实会重复。他们为我的客户提供了最终的 excel 表,并且必须将 excel 数据导入完成的数据库。但是在检查后我们发现数据有重复的 id。

DB Schema with row sample

SRNO    BarcodeID    VisibleID
----    ---------    ---------
1       C007587      C000001
2       C000001      C011704

操作员大部分时间使用条形码扫描仪扫描物品上的 ID,但有时他们也手动输入值。

SQL Query I am using is as follows
----------------------------------

select * from <table> where barcodeid='C000001' or VisibleID='C000001'

当执行上面的 SQL 代码时,出于显而易见的原因,我们得到 2 行,而我只需要得到 1 行。(只要在任一列中没有重复值,我们就会得到对我们有用的单行结果)。

注意:如果操作员键入或扫描 ID 代码,我将无法区分,也无法修改我们收到的 excel 文件。

因此,请就如何解决此问题并获得实际结果提出任何建议。

4

1 回答 1

0

如果不说明输入的来源(条形码/手动输入),则无法检测到这一点。

另外:条形码下方的数字通常是条形码编号本身,这也是条形码规范 (afaik) 的一部分。

但是,这并不总是可能的。我有一个使用人类可读 ID 和 RFID 标签的客户。RFID-ID 是 36 位十六进制数字代码,不适合人工输入。区分两者的解决方案是密钥的长度(以及输入源)。人类可读的 ID 始终为 4 位数字。

所以我可以提供3个解决方案:

  1. 查询数据库时要考虑输入源。
  2. 在条码下方打印条码#
  3. 更改任一代码的代码长度。
于 2013-02-22T07:48:31.863 回答