2012-03-27 65 views
-1

嗨以下是在mysql中创建表的语法。 我想在oracle9i中创建具有相同属性的表。 任何人都可以为我提供oracle的等效语法吗?从mysql迁移到oracle9i.Equivalent create table syntax

CREATE TABLE IF NOT EXISTS "tbl_audit_trail" (
     "id" int(11) unsigned NOT NULL, 
     "old_value" text NOT NULL, 
     "new_value" text NOT NULL, 
     "action" varchar(20) CHARACTER SET latin1 NOT NULL, 
     "model" varchar(255) CHARACTER SET latin1 NOT NULL, 
     "field" varchar(64) CHARACTER SET latin1 NOT NULL, 
     "stamp" timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP, 
     "user_id" int(11) NOT NULL, 
     "model_id" varchar(65) CHARACTER SET latin1 NOT NULL, 
     PRIMARY KEY ("id"), 
     KEY "idx_user_id" ("user_id"), 
     KEY "idx_model_id" ("model_id"), 
     KEY "idx_model" ("model"), 
     KEY "idx_field" ("field"), 
     KEY "idx_old_value" ("old_value"(16)), 
     KEY "idx_new_value" ("new_value"(16)), 
     KEY "idx_action" ("action") 
    ) AUTO_INCREMENT=168 ; 
+1

现在迁移到9i是一个奇怪的想法。 – Mat 2012-03-27 11:28:56

+0

其实迁移到9i是一个**糟糕的主意。只需阅读Oracle手册即可轻松解决问题。 – 2012-03-27 11:29:35

+0

迁移到9i是客户的要求,所以我们很无奈。 – 2012-03-27 11:41:33

回答

2

迁移到Oracle 9i是一个坏主意。假设“9i”的意思是9.2.0,则扩展支持在2010年7月30日结束。如果您正在谈论9.0.1,则扩展支持在2006年6月30日结束。

如果您有约束力并决心走上这条道路,那么Oracle文档可以免费获得,网址为http://docs.oracle.com/。除此之外,不要.....没有9i文档!这被认为太旧了,已被删除。

9i文档的选项可能会做一些谷歌搜索,看它是否仍然可以从Oracle下载,或在其他地方提供。

但我的推荐是不是使用Oracle 9i为这个项目!转到11gR2,最好是11.2.0.3.0。如果有一个现有的数据库,请与您的客户谈谈,在开始之前将其升级到11gR2。

仅仅因为客户说了些什么,并不意味着它是正确的。您是Oracle专家。你需要教育他。

希望有所帮助。