Ich habe eine Tabelle wie dieseSQL-Abfrage mit Feldern vom Typ NUMERIC
CREATE TABLE MyTable (
[MyTableID] [int] NOT NULL,
[Description] [varchar](50) NOT NULL,
CONSTRAINT [PK_AddressType] PRIMARY KEY CLUSTERED (
[MyTableID] ASC
)
) ON [PRIMARY]
erklären Kann jemand, warum die folgende Abfrage funktioniert auch, wenn ich den Feldwert in einfachen Anführungszeichen bin auch?
SELECT *
FROM MyTable
WHERE MyTableID = '1'
Ist dies eine SQL Server-spezifische Funktion? Es ist ANSI/SQL?
Diese Art der impliziten Datenkonvertierung ist spezifisch für SQL Server richtig? Ich bin fast sicher, dass die Abfrage wird fehlschlagen an Oracle und DB2 – Lorenzo
@Lorenzo: Ich habe aktualisiert, während Sie kommentieren, aber nein - es ist nicht spezifisch für SQL Server. –
Ok! Vielen Dank für die Erklärung. Ich habe dies gerade entdeckt, als ich versuchte, einen Fehler in meinem Code zu verursachen. Wenn ich das vorher wüsste, waren einige der Abfrage-Builder-Klassen, die ich schrieb, viel einfacher :) – Lorenzo