Dies ist meine WinSQL-Abfrage, die ich versuche und ausführe.Datenkonvertierung oder Datenzuordnungsfehler in SQL
SELECT ezait6 AS "MO No",
vhitno AS "Item No",
vhrefd AS "Finish Date",
vhmaqa AS "Manuf Qty",
vhmaun AS "U/M"
FROM m3edbtest.mwohed,
m3edbtest.cinacc
WHERE ezcono = 1
AND vhcono = ezcono
AND vhrefd >= '20170801'
AND vhrefd <= '20170831'
AND vhmfno = ezait6;
--Different Datentypen
--vhmfno ==> Integer
--ezait6 ==> nchar (8)
Nachdem ich meine Abfrage ausführen, habe ich unten Fehler:
-- Error : SQL0802 - Data conversion or data mapping error.
ich vermute, dass es beclose von anderen Datentyp ist ich habe nvarchar Spalte in einer meiner Tabelle "ezait6". Also wie sollte ich diese Werte in INT-Typ konvertieren.
können Sie vhmfno = CONVERT (INT, ezait6), aber es wird eine Ausnahme aus, wenn ezait6 nicht haben nur numerische Daten. – farbiondriven
Verwenden Sie den obigen Kommentar Vorschlag machen auch Alias der Tabelle put aleas name.column Name für jede Spalte möglicherweise sein wird das Problem lösen. –
Scheint so, als müssten Sie Ihre Tabellendefinitionen anpassen ... (Wenn Sie Integer mit nchar (8) verbinden wollen, stimmt etwas nicht.) – jarlh