2013-08-16 12 views
5

Soweit ich kann, nach this chart, eine implizite Konvertierung von VARBINARY zu DATE sollte OK sein. Wenn ich jedoch den folgenden Code versuche, antwortet SQL Server mit "Implizite Konvertierung vom Datentyp varbinary (max) bis zum Datum ist nicht zulässig. Verwenden Sie die CONVERT-Funktion, um diese Abfrage auszuführen."SQL Server: implizite Datentyp Konvertierungen Diagramm

CREATE TABLE [dbo].[CONVERSION_TEST](
[mydate] [date] NULL 
) ON [PRIMARY] 

GO 


declare @bin varbinary(MAX) = NULL 
insert into conversion_test values (@bin) 

Ich verwende dies auf SQL Server 2012 (Version 11.0.3128).

Antwort

4

gefunden einfach diesen connect Beitrag:

Microsoft Connect

, die die folgende Aussage von Microsoft hat:

Geschrieben von Microsoft am 05.03.2008 um 13:23 Uhr Nach einigen schweren Diskussion, wir glauben, dass das aktuelle Design ist gut, vor allem gegeben, es ist kein interessantes Szenario, und wir unterstützen bereits explizite Konvertierung für die neuen Datum/Uhrzeit-Typen.

Auf der anderen Seite, wir denken auch, dass es nicht unbedingt eine gute Sache gegeben wir zu viele implizite Konvertierungen auf bestehenden Typen unterstützt. Die Konvertierung zu/von binär ist eine gefährliche Sache, und eine explizite Umwandlung ist sinnvoll, wenn erforderlich ist. Leider ist das Verhalten von ALTER TABLE an die implizite Konvertierung gebunden, aber Sie können immer damit umgehen, indem Sie eine neue Spalte erstellen, ein Update ausgeben und dann die alte Spalte löschen, falls Sie sich Sorgen machen. So

wenn kein starker Einwand, wir gehen das Folgende tun: - die BOL Fixing um anzuzeigen, dass es keine implizite Konvertierung Unterstützung von binären/varbinary neuem Datum/Zeit-Typ - schlie als ' By Design‘

dank

So scheint es, dass sie diese implizite Konvertierung zu verbieten entschieden, aber nicht das Diagramm aktualisieren.

+0

Also, es ist in der Tat ein Dokumentationsfehler :(Schade, wir könnten wirklich diese Funktion verwenden. – Eyvind

+0

Ja, ich habe Feedback zu dem Artikel in der Hoffnung, dass sie es aktualisieren, aber ich halte nicht mein Atem. – steoleary

Verwandte Themen