Почему в C ++ существует неявное преобразование типов из указателей в bool?

Я хочу вставлять строки в таблицу аудита всякий раз, когда в главной таблице «Таблица1» происходит вставка, обновление или удаление - независимо от того, какой столбец был изменен / вставлен. Я также хочу добавить I, U или D при вставке, обновлении или удалении. Для вставки и удаления я проверяю, существуют ли строки во вставленной и удаленной таблице. Как лучше всего подойти к обновлению.

Мой код для вставки и удаления:

CREATE TRIGGER [dbo].[tr_Table1_InsertUpdate_Table1History_Insert]
ON [dbo].[Table1]
FOR INSERT, DELETE, UPDATE

AS
BEGIN
 IF EXISTS(SELECT * FROM Inserted)
 BEGIN
  INSERT INTO Table1History(...., ModificationType)
  SELECT ..., 'I'
  FROM Inserted
 END


 IF EXISTS(SELECT * FROM Deleted)
 BEGIN
  INSERT INTO Table1History(..., ModificationType)
  SELECT ..., 'D'
  FROM Deleted
 END

END
GO

Пожалуйста, помогите!

6
задан wildplasser 16 January 2013 в 17:52
поделиться