database - 使用用户定义的类型作为主键

标签 database database-design user-defined-types database-theory

假设我有一个系统,其中有元数据,例如:

table: 
====== 
   key 
   name 
   address 
   ... 

然后假设我有一个这样描述的用户定义类型:

datasource 
datasource-key 

A) 是否有系统可以根据用户定义的类型设置 key ?
B) 如果是这样,你如何将键分解成适合查询的形式?
C)在这种情况下,我最好使用复合主键吗?

最佳答案

如果这是模型所说的,请使用复合主键

  • 如果您必须分解成组件进行查询,那么您已经牺牲了性能
  • 任何不透明的用户定义类型都可能给出错误的重复,因为 2 个不同的输入可能会给出相同的输出

我没有尝试过,但 SQL Server 可能会允许它。 然而,主键是一个索引,所以如果用户类型既不是确定性的也不是模式绑定(bind)的,它可能不是,绝对不是

虽然,我认为我在思考中混淆了类型和 udfs...

关于database - 使用用户定义的类型作为主键,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2457877/

相关文章:

php - 如何使用 PHP 捕获 MySQL 中的搜索索引?

mysql - sun mysql数据库管理器哪里去了?

python - 如何在映射 Django 模型时使用多个外键

oracle - Oracle 对象的使用范围有多广?

sql-server - 如何记录 SQL Server 表中更改的数据。哪种方法更好

mysql - 计算表中的重复名称

sql - 多对多表设计问题

mysql - 建立索引时速度更快。 MySQL 中的 INT (10) 或时间戳

vba - UDT 能否以任何方式用作方法参数?

java - cassandra : List of arrays 中的自定义列类型