Como el título indica: ¿Hay alguna forma de desactivar la conversión de tipo implícita en SQL Server?¿Hay alguna forma de desactivar la conversión de tipo implícita en SQL Server?
Quiero el siguiente código SQL sencilla para generar un error
SELECT 'a' WHERE 1='1'
Buena pregunta, excepto: ¿por qué es importante? Después de diez largos segundos pensando en ello, no puedo pensar en un ejemplo en el que accidentalmente compararía dos tipos diferentes, pero si estoy _deliberadamente_ comparando dos tipos diferentes, entonces quiero la conversión ... – nnnnnn
Creo que importa mucho de razones Entre otros, el que usted nombra: comparación accidental. Creo que sería bueno tener un tipo definido por el usuario en una tabla en un campo dado que podría ser una clave y tener una clave externa en otra tabla. Creo que el valor predeterminado debería ser el al comparar dos valores: si los tipos de tipos son diferentes: error. – Yodiz
Es una característica de SQL estándar que Chris Date le atribuye a su amigo E. F. Codd, con la idea de que "a veces el usuario sabrá más de lo que DBMS lo hace". Pero Date considera que esto ha sido un error de juicio: google la frase exacta '[" Verificaciones de dominio estilo codd "] (http://www.google.co.uk/search?q=%22Codd-style+domain+checks% 22) para más detalles. – onedaywhen