Sqlserver
 sql >> Teknologi Basis Data >  >> RDS >> Sqlserver

SQL Server JIKA TIDAK ADA Penggunaan?

Sudahkah Anda memverifikasi bahwa sebenarnya ada baris di mana Staff_Id =@PersonID? Apa yang Anda posting berfungsi dengan baik dalam skrip pengujian, dengan asumsi baris itu ada. Jika Anda mengomentari pernyataan sisipan, maka kesalahan akan muncul.

set nocount on

create table Timesheet_Hours (Staff_Id int, BookedHours int, Posted_Flag bit)

insert into Timesheet_Hours (Staff_Id, BookedHours, Posted_Flag) values (1, 5.5, 0)

declare @PersonID int
set @PersonID = 1

IF EXISTS    
    (
    SELECT 1    
    FROM Timesheet_Hours    
    WHERE Posted_Flag = 1    
        AND Staff_Id = @PersonID    
    )    
    BEGIN
        RAISERROR('Timesheets have already been posted!', 16, 1)
        ROLLBACK TRAN
    END
ELSE
    IF NOT EXISTS
        (
        SELECT 1
        FROM Timesheet_Hours
        WHERE Staff_Id = @PersonID
        )
        BEGIN
            RAISERROR('Default list has not been loaded!', 16, 1)
            ROLLBACK TRAN
        END
    ELSE
        print 'No problems here'

drop table Timesheet_Hours



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Permintaan sangat lambat dalam kode tetapi cepat dalam SSMS

  2. Butuh bantuan dalam perhitungan menggunakan dua Dataset menggunakan Expression SSRS

  3. Bagaimana KECUALI Bekerja di SQL Server

  4. Cara Menghentikan/Memulai Antrian Surat Database di SQL Server (T-SQL)

  5. Bagaimana saya bisa menggabungkan beberapa baris ke dalam daftar yang dipisahkan koma di SQL Server 2005?