sql - 唯一标识符与身份

标签 sql sql-server tsql asp.net-membership data-modeling

我注意到 asp_membership 使用 uniqueidentifier,对我来说,这似乎是浪费空间,因为我想不出不将其替换为标识的特定原因。

但是,SQL Server 不允许我将其更改为 int。它说“连接的数据库服务器不支持从 uniqueidentifier 到 int 的转换”。经过谷歌搜索后,似乎我必须打破所有关系等,然后手动删除该列并将其重新添加为 int。你们知道更好的方法吗?

我认为我不会处理多个数据库,因此 uniqueidentifier 对我来说似乎不需要。你同意?

请注意:我正在启动一个新的网络应用程序。您仍然认为解决这个问题那么困难吗?

另请注意,我的任何主键都不会成为我的 URL 的一部分。

最佳答案

我的建议是不要管它。您是对的,您需要做很多工作(如您所描述的)才能摆脱它。为什么?为什么要搞乱那些刚刚好用的东西呢?为了节省数据库空间?如今,由于存储成本如此低廉,并且硬盘驱动器或存储阵列的平均大小也如此,因此所节省的空间量完全微不足道。

这个想法没有投资返回。

关于sql - 唯一标识符与身份,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1414340/

相关文章:

php - 难以根据表单中的用户输入更改 PHP 文档中的 SQL 查询

mysql - 在另一个选择查询中使用一个选择查询的输出

SQL Server : How to group by a datetime column based on a time interval (Such as within 2 hours)

sql - 为什么 Oracle 返回无效月份错误

sql - 有条件地插入到 Snowflake 中的表中

sql - Hive 查询 - 从每个组中获取多个字段的最大值和总和

asp.net - 无法完成操作。提供的 SqlConnection 未指定初始目录或 AttachDBFileName

mysql - 表值作为 SQL 函数的输入

mysql - 在 ALTER_PROCEDURE DDL 触发器中获取过程名称

tsql - SQL 查询组合过滤两个字段