在SQL Server中将位数据类型转换为VarChar

阿尔贝尔蒙多

我有一些使用bit数据类型的最终用户现在需要N / A选项,所以在我使用一点捕获“是/否”(1是是,0是否)之前,我现在需要具有三个选项,可以存储是/否/ NA就像varchar

有没有一种方法可以将列的数据类型从更改bitvarcharAND并且还可以将当前记录数据更新为0,将我更改为“否”,将1更改为“是”?

所罗门·鲁兹基

为什么不仅仅用NULL“ n / a”来表示呢?

否则将使用TINYINT包含值0、1和2(或者可能是1、2和3)及其含义的查找表。然后,在两个表之间添加FK以强制仅输入那些值。

最后的选择是去同一个CHAR(1)列。仅当您还指定了二进制排序规则(如)时,这才可以Latin1_General_100_BIN2二进制归类将使它不至于损失其他两个选项的性能。如果没有二进制归类,则string列会将值与语言规则进行比较,这需要花费更多时间,但对于这种用法没有任何意义。你还需要一个AFTER INSERT, UPDATE触发到第一UPPER()这个值的一致性,然后执行所有的值或者是YN,或A(对于“N / A”)。比0、1和2(通过TINYINT),而且搜索效率非常高,也只有1个字节,因此BUT使用将需要记住仅指定大写字母,否则它们可能无法获得预期的结果。

没有理由在所有使用VARCHAR(3)并存储满值N/A/ Yes/ No,除非你只是不关心系统越来越慢;-)。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

在SQL Server中将varchar值转换为数据类型int时转换失败

在SQL Server中将varchar(50)转换为datetime数据类型

在SQL Server中将varchar数据类型转换为带存储过程错误的小数

在存储过程SQL Server中将varchar值'Blue color'转换为数据类型int时转换失败

如何使用python在SQL Server中将字符串数据类型类型的行转换为XML数据类型

SQL Server:将数据类型 varchar 转换为数字时出错(奇怪的行为)

SQL Server从查询“将数据类型varchar转换为bigint时出错”

SQL Server:将数据类型varchar转换为数值时出错

将数据类型 varchar 转换为真正的 SQL Server 时出错

如何在 SQL Server 中将整数数据类型列值转换为日期时间

将varchar值'1,3'转换为SQL Server中的数据类型int时转换失败

Laravel与SQL Server 2008抛出“将varchar数据类型转换为日期时间数据类型导致值超出范围”

SQL Server转换为真实数据类型

PHP PDO unixODBC FreeTDS SQL Server在存储过程中“将数据类型varchar(max)转换为datetime”

如何从Hashbytes函数的SHA2_256加密数据类型转换为SQL Server 2012中的varchar(256)

将varchar转换为int数据类型时转换失败:SQL

SQL-将Varchar值转换为数据类型Int时转换失败

将varchar值转换为数值数据类型时,SQL转换失败

将数据类型varchar转换为数字时出错。sql t-sql

sql 将 varchar 数据类型转换为超出范围的日期时间数据类型

在SQL Server中将日期转换为varchar

SQL代码错误将数据类型varchar转换为float

VBA更新SQL错误将varchar转换为数值数据类型

SQL-将数据类型varchar转换为数值时出错

不允许从数据类型varchar隐式转换为varbinary。(SQL)

SQL Server文本类型与varchar数据类型

在spark中将字符串名称转换为sql数据类型

在SQL中将表达式转换为数据类型int时出错

在SQL中将数字转换为数据类型数字的算术溢出错误