SQL Server : duplicates value

Ruwan Disanayaka

I'm updating my project And now the problem is sometimes ticket number Duplicates after update whats wrong with this code?

Or what would be the most elegant solution to allow me to

My code is

DECLARE @tbl_ID TABLE (nID int)
UPDATE tbl_Tickets
SET Ticket_Type = @Ticket_Type,
VehicleNo= @VehicleNo,
Customer=@Customer,
Job_Code=@Job_Code,
Material=@Material,
First_Weight=@First_Weight,
Second_Weight=@Second_Weight,
Net_Weight=@Net_Weight,
Add_Charges=@Add_Charges,
Deduction=@Deduction,
Ticket_Amount=@Ticket_Amount,
SOURCE=@Source,
       Destination=@Destination,
OPERATOR=@Operator,
     Out_Time=@Out_Time,
     PC=@PC,
     Unit_Price=@Unit_Price OUTPUT INSERTED.QS_Code INTO @tbl_ID (nID)
 WHERE (VehicleNo=@VehicleNo)
 AND (Second_Weight IS NULL)
 AND (Ticket_Type <>'DELETED') IF @@ROWCOUNT=0 BEGIN

INSERT INTO tbl_Tickets (Ticket_Type, TicketNo, VehicleNo, nDate, Customer,Job_Code,Material,     First_Weight, Second_Weight, Net_Weight, Unit_Price, Add_Charges, Deduction, Ticket_Amount,SOURCE, Destination,
                       OPERATOR, In_Time, PC)
VALUES (@Ticket_Type,
      @TicketNo,
      @VehicleNo,
      @nDate,
      @Customer,
      @Job_Code,
      @Material,
      @First_Weight,
      @Second_Weight,
      @Net_Weight,
      @Unit_Price,
      @Add_Charges,
      @Deduction,
      @Ticket_Amount,
      @Source,
      @Destination,
      @Operator,
      @In_Time,
      @PC)
 SELECT IDENT_CURRENT('tbl_Tickets')
 FROM tbl_Tickets
 UPDATE tbl_TicketNumber
 SET TicketNo = @TTicket,
  PC= @TPC,
  nDate= @TnDate WHERE (PC=@TPC) IF @@ROWCOUNT=0 BEGIN
 INSERT INTO tbl_TicketNumber (TicketNo, PC, nDate)
 VALUES (@TTicket,
      @TPC,
      @TnDate) END END
SELECT *
FROM @tbl_ID

Then I change it to

cm.CommandText = " DECLARE @tbl_ID TABLE (nID int) UPDATE tbl_Tickets " & _
        " SET Ticket_Type = @Ticket_Type, TicketNo = @TicketNo, VehicleNo= @VehicleNo," & _
        " nDate=@nDate, Customer=@Customer, Job_Code=@Job_Code, Material=@Material, " & _
        " First_Weight=@First_Weight, Second_Weight=@Second_Weight, Net_Weight=@Net_Weight, " & _
        " Add_Charges=@Add_Charges, Deduction=@Deduction, Ticket_Amount=@Ticket_Amount, " & _
        " Source=@Source, Destination=@Destination, Operator=@Operator, Out_Time=@Out_Time, PC=@PC, Payment=@Payment,Unit_Price=@Unit_Price " & _
        EditString & _
        " OUTPUT INSERTED.QS_Code INTO @tbl_ID (nID)  WHERE (VehicleNo=@VehicleNo) AND (Second_Weight IS NULL) AND  (Ticket_Type <>'Weighbridge_VOID') AND  (Ticket_Type <>'Cash_VOID') " & _
       " IF @@ROWCOUNT=0  " & _
        " BEGIN " & _
            " INSERT INTO tbl_Tickets (Ticket_Type, TicketNo, VehicleNo, nDate, Customer,Job_Code,Material, " & _
            " First_Weight, Second_Weight, Net_Weight, Unit_Price, Add_Charges, Deduction, Ticket_Amount,Source, " & _
            " Destination, Operator, In_Time, PC, Payment " & _
            AddString & " ) VALUES (@Ticket_Type, '00-00', @VehicleNo, @nDate, @Customer,@Job_Code,@Material, " & _
            " @First_Weight, @Second_Weight, @Net_Weight, @Unit_Price, @Add_Charges, @Deduction, @Ticket_Amount,@Source, " & _
            " @Destination, @Operator, @In_Time, @PC, @Payment  " & _
            AddStringVal & " ) SELECT IDENT_CURRENT('tbl_Tickets') FROM tbl_Tickets " & _
           " END SELECT * From @tbl_ID" '

And add the TicketNumberUpdate sub after this update like this

cm.CommandText = " UPDATE tbl_TicketNumber " & _
            " SET TicketNo = @TTicket, PC= @TPC, nDate= @TnDate" & _
            " WHERE (PC=@TPC) " & _
           " IF @@ROWCOUNT=0 " & _
           " INSERT INTO tbl_TicketNumber (TicketNo, PC, nDate) VALUES (@TTicket,@TPC,@TnDate) "
Spock

It looks like you're ignoring the value of the IDENT_CURRENT Try changing

SELECT IDENT_CURRENT('tbl_Tickets')
FROM tbl_Tickets

UPDATE tbl_TicketNumber SET
    TicketNo = @TTicket,
    PC= @TPC,
    nDate= @TnDate
WHERE (PC=@TPC) 

to this

SET @TTicket = IDENT_CURRENT('tbl_Tickets')

UPDATE tbl_TicketNumber SET
    TicketNo = @TTicket,
    PC= @TPC,
    nDate= @TnDate
WHERE (PC=@TPC) 

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

How to select sequential duplicates in SQL Server

分類Dev

Using XQuery in SQL Server returning duplicates

分類Dev

how to remove duplicates from a comma seperated string in sql server

分類Dev

SQL Server split value into columns

分類Dev

SQL Duplicates optimization

分類Dev

SQL search no duplicates

分類Dev

SQL - Remove Duplicates

分類Dev

Pull Data from Hive to SQL Server without duplicates using Apache Nifi

分類Dev

Comparing empty string with null value - SQL Server

分類Dev

SQL Server 2012のJSON_VALUE?

分類Dev

Total Count of column value in Sql Server

分類Dev

SQL server : Replace the value using like operator

分類Dev

SQL Server 2017 identity value jumped backward

分類Dev

Customize rounding a decimal value in SQL Server

分類Dev

SQL Server 2005 - Insert with Select for 1 Value

分類Dev

SQL SERVER STUFF FUNCTION VALUE INCREMENT COUNTER

分類Dev

SQL Return distinct values from duplicates where User is not a certain value most of the time

分類Dev

Case when a value is different to other value, SQL Server

分類Dev

Remove duplicates after UNION in SQL

分類Dev

How to get next value of SQL Server sequence in Entity Framework?

分類Dev

SQL Server 2008でのCount(Distinct([value))OVER(Partition by)

分類Dev

How does SQL Server detmine the next value in a sequence?

分類Dev

ASP.Net cannot add byte value to my SQL Server

分類Dev

SQL Server - Rows to column based on third column value

分類Dev

How to search ID of object nvarchar value on SQL Server

分類Dev

How to update table and add column value in SQL Server?

分類Dev

SQL Server to check all columns in a databases views for a specific string value

分類Dev

MS SQL Server SSIS Import error decimal value

分類Dev

Getting value from MAX(Date) Row in SQL Server

Related 関連記事

  1. 1

    How to select sequential duplicates in SQL Server

  2. 2

    Using XQuery in SQL Server returning duplicates

  3. 3

    how to remove duplicates from a comma seperated string in sql server

  4. 4

    SQL Server split value into columns

  5. 5

    SQL Duplicates optimization

  6. 6

    SQL search no duplicates

  7. 7

    SQL - Remove Duplicates

  8. 8

    Pull Data from Hive to SQL Server without duplicates using Apache Nifi

  9. 9

    Comparing empty string with null value - SQL Server

  10. 10

    SQL Server 2012のJSON_VALUE?

  11. 11

    Total Count of column value in Sql Server

  12. 12

    SQL server : Replace the value using like operator

  13. 13

    SQL Server 2017 identity value jumped backward

  14. 14

    Customize rounding a decimal value in SQL Server

  15. 15

    SQL Server 2005 - Insert with Select for 1 Value

  16. 16

    SQL SERVER STUFF FUNCTION VALUE INCREMENT COUNTER

  17. 17

    SQL Return distinct values from duplicates where User is not a certain value most of the time

  18. 18

    Case when a value is different to other value, SQL Server

  19. 19

    Remove duplicates after UNION in SQL

  20. 20

    How to get next value of SQL Server sequence in Entity Framework?

  21. 21

    SQL Server 2008でのCount(Distinct([value))OVER(Partition by)

  22. 22

    How does SQL Server detmine the next value in a sequence?

  23. 23

    ASP.Net cannot add byte value to my SQL Server

  24. 24

    SQL Server - Rows to column based on third column value

  25. 25

    How to search ID of object nvarchar value on SQL Server

  26. 26

    How to update table and add column value in SQL Server?

  27. 27

    SQL Server to check all columns in a databases views for a specific string value

  28. 28

    MS SQL Server SSIS Import error decimal value

  29. 29

    Getting value from MAX(Date) Row in SQL Server

ホットタグ

アーカイブ