【问题标题】:Create Table with same name for columns but different data types为列创建具有相同名称但数据类型不同的表
【发布时间】:2016-01-25 05:40:53
【问题描述】:

我正在使用 sql 在我的数据库中创建表以支持不同的配置。我的表中的列具有相同的列名但不同的数据类型。 例如

第一次配置: 表包含类型为 int

的列字段

第二个配置: 表包含类型为 varchar(255)

的列字段

第三种配置: 表包含类型为 char

的列字段

为了支持 3 种不同的配置,我的数据库应该包含所有三个字段。

我的创建脚本是:

CREATE TABLE P1
(
Field  int,
Field  varchar(255),
Field char

);

但是由于列名重复,这会产生错误。 是否有解决此问题的方法或可以遵循更好的设计。请提出建议。

【问题讨论】:

  • 您在这些列中存储了哪些类型的数据?可以将它们分成不同的表格以进行不同的组合吗?您能否为您的配置提供示例数据以及如何使用它们。还有 mysql postgresql sql server。选一个
  • @ughai...谢谢...我正在使用 postgresql
  • 对于一个表,列名必须是唯一的。您不能拥有三个具有相同名称的列。没有解决方法(顺便说一句:您不需要两个字符列 - 从性能的角度来看,varcharchar 是相同的)

标签: sql postgresql


【解决方案1】:

您不能以三种不同的方式定义同一列。要做类似于你想做的事情,你必须做类似的事情

CREATE TABLE P1 (
Field_int  int,
Field_varchar  varchar(255),
Field_char char
);

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-01-11
    • 1970-01-01
    • 2013-05-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多