Обычно используются те аргументы по умолчанию, которые видны в определенной области. Вы можете делать (но не должны) напуганные вещи:
#include <iostream>
void frob (int x) {
std::cout << "frob(" << x << ")\n";
}
void frob (int = 0);
int main () {
frob(); // using 0
{
void frob (int x=5) ;
frob(); // using 5
}
{
void frob (int x=-5) ;
frob(); // using -5
}
}
В вашем случае видна подпись базового класса. Чтобы использовать производные аргументы по умолчанию, вы должны явно вызвать эту функцию с помощью указателя на ваш производный класс, либо объявив его таким образом, либо правильно произведя его.
Вы можете использовать перед этим GO:
IF EXISTS(SELECT * FROM SYS.VIEWS WHERE NAME = 'TP_LEAVEDATA') BEGIN
EXEC SP_RENAME 'TP_LEAVEDATA', 'TP_LEAVEDATA_BKP_EXPORT_TEST1' ;
END;
GO
CREATE VIEW TP_LEAVEDATA AS
SELECT USERNAME, Dept, LeaveType, LeaveFrom, LeaveUpto
FROM LeaveRequest_DATA;
Другой вариант - использовать динамический SQL для создания представления.