oracle建表时没有BOOLEAN 类型。

解决方案 »

  1.   

    SQL> create table STUDENT  (
      2     "id"                 INTEGER                          not null,
      3     "name"               NVARCHAR2(20)                    not null,
      4     "enabled"            BOOLEAN                          not null,
      5     constraint PK_STUDENT primary key ("id")
      6  )
      7  /
       "enabled"            BOOLEAN                          not null,
                            *
    ERROR 位于第 4 行:
    ORA-00902: 无效数据类型
      

  2.   

    我试过, 可是很多数据类型他又不认识了, 比如"BOOLEAN"我是不是应该用PL/SQL Developer来运行 ???
      

  3.   

    BOOLEAN是PowerDesigner帮我生成的数据类型
    我查了一下goole, BOOLEAN是PL/SQL支持的扩展数据类型我的疑惑是, PD生成的script应该用什么来执行??
      

  4.   

    本来就不认boolean类型!你换成integer,用0/1来表示不就行了!
      

  5.   

    换成INTEGER再用个check来约束就行了
      

  6.   

    PowerDesigner设计的时候先设计概念模型, 里面字段类型为boolean
    当生成ms sql2k的物理模型的时候, 对应到bit
    当生成oracle 9i的物理模型的时候对应到boolean
    当生成mysql 3.25的物理模型的时候对应到tinyint(1)所以, 我觉得PD生成boolean是有道理的,而且据说PL/SQL的语法是支持boolean
      

  7.   

    如果只是使用boolean
    可以使用
    create type 
    当然也可以使用oracle的扩展脚本
      

  8.   

    大家继续跟贴
    我基本上决定改PD的concept设计加入domain, 映射到oracle的integer