我已经搜索了这个很棒的论坛并在Google周围搜索,但无法解决。
我们有两个表(相信我,我与这些表无关)。这两个表都有一个名为的列eventId
。
然而,在一个表中,数据类型eventId
就是float
和在另一个表中,这是nvarchar
。
我们从选择table1
这里eventI
被定义为float
和保存该ID写入table2
其中eventId
被定义为nvarchar(50)
。
作为数据类型descrepancy的结果,我们得到错误转换数据类型nvarchar
来float
。
在不弄乱数据库的情况下,我想强制使用eventId
摆脱该错误。
有什么想法我在下面的代码做错了吗?
SELECT
CAST(CAST(a.event_id AS NVARCHAR(50)) AS FLOAT) event_id_vre,
该问题最有可能是因为某些行的event_id
行为空。有两种方法可以解决此问题:
float
为nvarchar
,而不是相反-这种转换将始终成功。唯一的问题是文本表示形式是否不同-例如,带有float
-as-的表nvarchar
使用较少的十进制数字,或者第二种解决方案如下所示:
SELECT
case when a.eventid <> ''
then cast(cast(a.event_id as nvarchar(50)) as float)
ELSE 0.0
END AS event_id_vre,
问题内容: 在SO上进行了搜索和搜索,无法弄清楚 尝试将每个字段作为FLOAT进行铸造都无济于事,转换没有给我任何进一步的帮助。 如何获取以下case子句以返回THEN部分中所述的值? 错误:消息8114,级别16,状态5,行1将数据类型varchar转换为float时出错。 我的SQL查询的错误部分: average_days_pay = float terms_code = char 问题答案
问题内容: 我在代码隐藏中收到转换失败的错误。我的代码如下: 我收到以下错误: 将nvarchar值转换为数据类型int时,转换失败。 在这里必须进行哪些更改? 问题答案: 我想这是一个整数,但您正在分配一个字符串。因此,这可能会解决它: 编辑:由于您已评论该会话存储了用户名,但该列是一个int列,因此您有三个选择: 更改会话以存储用户标识而不是名称 更改列以存储用户名 从存储用户名的表中选择用户
我在IIS上成功安装了Laravel。我也成功地用laravel连接了MSSQL数据库。我运行artisan命令< code>php artisan make:auth和< code>php artisan migrate。制作一个登录/注册页面。现在,当我注册一个新用户时,我得到一个错误。: SQLSTATE[22007]:[Microsoft][ODBC驱动程序17 forSQLServer]
问题内容: 我正在尝试使用存储过程基于varchar类型的“名称”列的输入值来返回“项目”表的“ ItemId”列值,但是每当我将任何值传递给存储过程时,它都会向我返回错误: 将数据类型varchar转换为int时出错。 这就是我所说的: 问题答案: 您必须匹配参数:RETURN不会填充OUTPUT参数:您对@itemid的赋值可以做到这一点。 另外,您存储的过程太复杂了。对于从存储的proc返回
本文向大家介绍Java程序将Java Float转换为数值基元数据类型,包括了Java程序将Java Float转换为数值基元数据类型的使用技巧和注意事项,需要的朋友参考一下 让我们首先声明一个Float对象。 现在,让我们将其转换为简短的数字原始数据类型 同样,我们可以使用method将其转换为int 。 以下是将Float转换为其他数字原始数据类型的示例。 示例 输出结果
问题内容: 我目前有一个表,其列为。该列可以容纳数字或文本。在某些查询期间,我将其视为一列(我将其与另一个表中的列进行连接) 只要在该字段中只有数字没有问题,但是即使是一分钟的分钟也有文本,而在此字段中没有数字,我就会收到“将数据类型转换为的错误”。即使在WHERE部分中,我也确保所有文本字段都没有出现。 为了解决这个问题,我创建了一个视图,如下所示: 但是,即使视图仅显示具有数字值的行并将Myc