Temat pewnie nie jest zbyt jasny, chodzi o coś takiego.
Załóżmy, że mamy tabelę:
CREATE table tab(
data varbinary(max)
)
I mamy taką procedurę:
CREATE procedure proc1
as
begin
update tab set data = 'ABCD' -- pole data jest varbinary, a nie varchar
end
Problem jest taki. Tabela TAB kiedyś pole data miała typu VARCHAR. Procedura proc jest procedurą dotyczącą starych wersji bazy. Jest odpalana przez aplikację, gdy baza jest w odpowiedniej wersji.
Niestety w nowej wersji bazy, podczas wykonania CREATE procedure dostaję błąd niezgodności typów: Implicit conversion from data type varchar to varbinary(max). Zaznaczam - podczas CREATE, a nie podczas wykonywania procedury proc1. Jak tego uniknąć?
Problem dotyczy MSSQL 2005 i nowszych