Converting Binary Strings into NUMERIC or FLOAT in SQL Server

Q

Can Binary Strings Be Converted into NUMERIC or FLOAT Data Types in SQL Server Transact-SQL?

✍: FYIcenter.com

A

Can binary strings be converted into numeric or float data types? The answer is no. Binary strings can not be converted implicitly or explicitly into NUMERIC, DECIMAL, REAL, or FLOAT data types.

The tutorial exercise gives you some examples of errors when converting binary strings to NUMERIC or FLOAT data types:

-- Implicit conversion to NUMERIC
SELECT 0x66 + 0.44;
GO
Msg 8114, Level 16, State 5, Line 1
Error converting data type varbinary to numeric.

-- Explicit conversion to NUMERIC
SELECT CONVERT(NUMERIC(9,2), 0x66) + 0.44;
GO
Msg 8114, Level 16, State 5, Line 1
Error converting data type varbinary to numeric.

-- Implicit conversion to REAL
DECLARE @real REAL;
SET @real = 0x66;
Msg 206, Level 16, State 2, Line 2
Operand type clash: varbinary is incompatible with real

-- Implicit conversion to FLOAT
DECLARE @float FLOAT(53);
SET @float = 0x66;
Msg 206, Level 16, State 2, Line 2
Operand type clash: varbinary is incompatible with float

 

Character Strings and Binary Strings in SQL Server Transact-SQL

⇒⇒SQL Server Transact-SQL Tutorials

2017-02-28, 183👍, 0💬