如何在sql表中验证输入的发票号是否已经存在

how can I verify if the entered invoice number already exist is my sql table?

本文关键字:是否 存在 输入 sql 验证      更新时间:2023-09-26

我有一个名为InvoiceNumber_OnChange()的函数,我试图实现一些代码,允许我验证输入的发票号是否已经存在是我的sql表。以下是我到目前为止写的。

function InvoiceNumber_OnChange()
{ 
  var invoice = $("#InvoiceNumber").val();
  var Sql1 = null;
  if (invoice != "")
  {
      Sql1 = "SELECT [DocumentNumber] FROM [DYNAMICS].[dbo].[AP_Invoice_Table] 
      WHERE DocumentNumber = '" + invoice +"'";
      if (Sql1) 
      {
        CSClient.alert("Invoice number already exist, please check your entry!")
        return false;
      }
      else return true;
     }
}

这不起作用,因为这不是获得sql查询值的正确形式(我不知道如何做到这一点)。如果找到发票#,我希望查询返回true或false或其他东西,这样我就可以根据存储在SQL1变量上的值输入if语句。

有人能帮我写缺失的代码吗?

尝试使用SELECT COUNT (*) FROM [DYNAMICS].[dbo].[AP_Invoice_Table] WHERE DocumentNumber = '" + invoice +"'"

如果返回> 0,则该值已经存在。

要小心,在您的select语句中,看起来您正在打开自己的sql注入攻击向量