I want insert all rows of a table into another table, and I also want convert a nvarchar field into bigint, but when I use convert(bigint, col1) SQL Server shows an error:
Error converting data type nvarchar to bigint
How can I fix this problem?
Advertisement
Answer
You could try to use ISNUMERIC to determine those rows that are indeed numeric:
UPDATE dbo.YourTable SET BigIntColumn = CAST(NVarcharColumn AS BIGINT) WHERE ISNUMERIC(NVarcharColumn) = 1
That would convert those rows that can be converted – the others need to be dealt with manually.