doc-exports/docs/dws/tool/dws_07_6834.html
Lu, Huayi 346ac31da9 DWS TG 8.1.3.200 VERSION
Reviewed-by: Pruthi, Vineet <vineet.pruthi@t-systems.com>
Reviewed-by: Jiang, Beibei <beibei.jiang@t-systems.com>
Co-authored-by: Lu, Huayi <luhuayi@huawei.com>
Co-committed-by: Lu, Huayi <luhuayi@huawei.com>
2023-08-28 09:20:17 +00:00

114 lines
8.2 KiB
HTML

<a name="EN-US_TOPIC_0000001188202552"></a><a name="EN-US_TOPIC_0000001188202552"></a>
<h1 class="topictitle1">Unique Indexes</h1>
<div id="body8662426"><div class="caution" id="EN-US_TOPIC_0000001188202552__en-us_topic_0238518442_en-us_topic_0237362414_en-us_topic_0214164547_note49007161318"><span class="cautiontitle"><img src="public_sys-resources/caution_3.0-en-us.png"> </span><div class="cautionbody"><p id="EN-US_TOPIC_0000001188202552__en-us_topic_0238518442_en-us_topic_0237362414_en-us_topic_0214164547_p790207191318">If MySQL unique indexes (constraints) and primary key constraints are used together during migration, OLAP distribution keys may become unavailable. Therefore, this scenario is not supported by DSC.</p>
</div></div>
<ol id="EN-US_TOPIC_0000001188202552__en-us_topic_0238518442_en-us_topic_0237362414_en-us_topic_0214164547_ol12553123692615"><li id="EN-US_TOPIC_0000001188202552__en-us_topic_0238518442_en-us_topic_0237362414_en-us_topic_0214164547_li15553183615265">If there is an inline unique index, DSC will delete it directly.<p id="EN-US_TOPIC_0000001188202552__en-us_topic_0238518442_en-us_topic_0237362414_en-us_topic_0214164547_p135691921172717"><a name="EN-US_TOPIC_0000001188202552__en-us_topic_0238518442_en-us_topic_0237362414_en-us_topic_0214164547_li15553183615265"></a><a name="en-us_topic_0238518442_en-us_topic_0237362414_en-us_topic_0214164547_li15553183615265"></a><strong id="EN-US_TOPIC_0000001188202552__en-us_topic_0237712486_b414614420426">Input</strong></p>
<pre class="screen" id="EN-US_TOPIC_0000001188202552__en-us_topic_0238518442_en-us_topic_0237362414_en-us_topic_0214164547_screen182799185276">CREATE TABLE IF NOT EXISTS `public`.`runoob_dataType_test`
(
`id` INT PRIMARY KEY AUTO_INCREMENT,
`name` VARCHAR(128) NOT NULL,
UNIQUE (id ASC)
);</pre>
<p id="EN-US_TOPIC_0000001188202552__en-us_topic_0238518442_en-us_topic_0237362414_en-us_topic_0214164547_p77858251279"><strong id="EN-US_TOPIC_0000001188202552__en-us_topic_0237712486_b12146154215426">Output</strong></p>
<pre class="screen" id="EN-US_TOPIC_0000001188202552__en-us_topic_0238518442_en-us_topic_0237362414_en-us_topic_0214164547_screen71919285272">CREATE TABLE "public"."runoob_datatype_test"
(
"id" SERIAL PRIMARY KEY,
"name" VARCHAR(128) NOT NULL
)
WITH ( ORIENTATION = ROW, COMPRESSION = NO )
NOCOMPRESS
DISTRIBUTE BY HASH ("id");</pre>
</li><li id="EN-US_TOPIC_0000001188202552__en-us_topic_0238518442_en-us_topic_0237362414_en-us_topic_0214164547_li19672194516269">If there is a unique index created by <strong id="EN-US_TOPIC_0000001188202552__en-us_topic_0237712486_b814634214426">ALTER TABLE</strong>, DSC will create a normal index based on GaussDB features.<p id="EN-US_TOPIC_0000001188202552__en-us_topic_0238518442_en-us_topic_0237362414_en-us_topic_0214164547_p1287443289"><strong id="EN-US_TOPIC_0000001188202552__en-us_topic_0237712486_b7146124216427">Input</strong></p>
<pre class="screen" id="EN-US_TOPIC_0000001188202552__en-us_topic_0238518442_en-us_topic_0237362414_en-us_topic_0214164547_screen9287164132817">CREATE TABLE IF NOT EXISTS `public`.`runoob_alter_test`(
`dataType1` int,
`dataType2` FLOAT(10,2),
`dataType3` DOUBLE(20,8)
)ENGINE=InnoDB DEFAULT CHARSET=utf8;
ALTER TABLE runoob_alter_test ADD UNIQUE idx_runoob_alter_test_datatype1(dataType1);
ALTER TABLE runoob_alter_test ADD UNIQUE INDEX idx_runoob_alter_test_datatype1(dataType2);
ALTER TABLE runoob_alter_test ADD UNIQUE KEY idx_runoob_alter_test_datatype1(dataType3);
CREATE TABLE IF NOT EXISTS `public`.`runoob_alter_test`(
`dataType1` int,
`dataType2` FLOAT(10,2),
`dataType3` DOUBLE(20,8),
`dataType4` TEXT NOT NULL,
`dataType5` YEAR NOT NULL DEFAULT '2018',
`dataType6` DATETIME NOT NULL DEFAULT '2018-10-12 15:27:33.999999'
)ENGINE=InnoDB DEFAULT CHARSET=utf8;
ALTER TABLE runoob_alter_test ADD CONSTRAINT UNIQUE idx_runoob_alter_test_datatype1(dataType1);
ALTER TABLE runoob_alter_test ADD CONSTRAINT UNIQUE INDEX idx_runoob_alter_test_datatype2(dataType2);
ALTER TABLE runoob_alter_test ADD CONSTRAINT UNIQUE KEY idx_runoob_alter_test_datatype3(dataType3);
ALTER TABLE runoob_alter_test ADD CONSTRAINT constraint_dataType UNIQUE idx_runoob_alter_test_datatype4(dataType4);
ALTER TABLE runoob_alter_test ADD CONSTRAINT constraint_dataType UNIQUE INDEX idx_runoob_alter_test_datatype5(dataType5);
ALTER TABLE runoob_alter_test ADD CONSTRAINT constraint_dataType UNIQUE KEY idx_runoob_alter_test_datatype6(dataType6);</pre>
<p id="EN-US_TOPIC_0000001188202552__en-us_topic_0238518442_en-us_topic_0237362414_en-us_topic_0214164547_p142870442811"><strong id="EN-US_TOPIC_0000001188202552__en-us_topic_0237712486_b0146114217424">Output</strong></p>
<pre class="screen" id="EN-US_TOPIC_0000001188202552__en-us_topic_0238518442_en-us_topic_0237362414_en-us_topic_0214164547_screen19288648288">CREATE TABLE "public"."runoob_alter_test"
(
"datatype1" INTEGER,
"datatype2" FLOAT(10),
"datatype3" FLOAT(20)
)
WITH ( ORIENTATION = ROW, COMPRESSION = NO )
NOCOMPRESS
DISTRIBUTE BY HASH ("datatype1");
CREATE INDEX "idx_runoob_alter_test_datatype1" ON "public"."runoob_alter_test" ("datatype1");
CREATE INDEX "idx_runoob_alter_test_datatype1" ON "public"."runoob_alter_test" ("datatype2");
CREATE INDEX "idx_runoob_alter_test_datatype1" ON "public"."runoob_alter_test" ("datatype3");
CREATE TABLE "public"."runoob_alter_test"
(
"datatype1" INTEGER,
"datatype2" FLOAT(10),
"datatype3" FLOAT(20),
"datatype4" TEXT NOT NULL,
"datatype5" VARCHAR(4) NOT NULL DEFAULT '2018',
"datatype6" TIMESTAMP WITHOUT TIME ZONE NOT NULL DEFAULT '2018-10-12 15:27:33.999999'
)
WITH ( ORIENTATION = ROW, COMPRESSION = NO )
NOCOMPRESS
DISTRIBUTE BY HASH ("datatype1");
CREATE INDEX "idx_runoob_alter_test_datatype1" ON "public"."runoob_alter_test" ("datatype1");
CREATE INDEX "idx_runoob_alter_test_datatype2" ON "public"."runoob_alter_test" ("datatype2");
CREATE INDEX "idx_runoob_alter_test_datatype3" ON "public"."runoob_alter_test" ("datatype3");
CREATE INDEX "idx_runoob_alter_test_datatype4" ON "public"."runoob_alter_test" ("datatype4");
CREATE INDEX "idx_runoob_alter_test_datatype5" ON "public"."runoob_alter_test" ("datatype5");
CREATE INDEX "idx_runoob_alter_test_datatype6" ON "public"."runoob_alter_test" ("datatype6");</pre>
</li><li id="EN-US_TOPIC_0000001188202552__en-us_topic_0238518442_en-us_topic_0237362414_en-us_topic_0214164547_li1937655815268">If there is a unique index created by <strong id="EN-US_TOPIC_0000001188202552__en-us_topic_0237712486_b5147842204215">CREATE INDEX</strong>, DSC will create a normal index based on GaussDB features.<p id="EN-US_TOPIC_0000001188202552__en-us_topic_0238518442_en-us_topic_0237362414_en-us_topic_0214164547_p15863552819"><strong id="EN-US_TOPIC_0000001188202552__en-us_topic_0237712486_b514714218424">Input</strong></p>
<pre class="screen" id="EN-US_TOPIC_0000001188202552__en-us_topic_0238518442_en-us_topic_0237362414_en-us_topic_0214164547_screen758620572815">CREATE TABLE `public`.`test_index_table01` (
`TABLE01_ID` INT(11) NOT NULL,
`TABLE01_THEME` VARCHAR(100) NULL DEFAULT NULL,
`AUTHOR_NAME` CHAR(10) NULL DEFAULT NULL,
`AUTHOR_ID` INT(11) NULL DEFAULT NULL,
`CREATE_TIME` INT NULL DEFAULT NULL,
PRIMARY KEY(`TABLE01_ID`)
);
CREATE UNIQUE INDEX AUTHOR_INDEX ON `test_index_table01`(AUTHOR_ID);</pre>
<p id="EN-US_TOPIC_0000001188202552__en-us_topic_0238518442_en-us_topic_0237362414_en-us_topic_0214164547_p35869514281"><strong id="EN-US_TOPIC_0000001188202552__en-us_topic_0237712486_b61471428425">Output</strong></p>
<pre class="screen" id="EN-US_TOPIC_0000001188202552__en-us_topic_0238518442_en-us_topic_0237362414_en-us_topic_0214164547_screen8586145162813">CREATE TABLE "public"."test_index_table01"
(
"table01_id" INTEGER(11) NOT NULL,
"table01_theme" VARCHAR(100) DEFAULT NULL,
"author_name" CHAR(10) DEFAULT NULL,
"author_id" INTEGER(11) DEFAULT NULL,
"create_time" INTEGER DEFAULT NULL,
PRIMARY KEY ("table01_id")
)
WITH ( ORIENTATION = ROW, COMPRESSION = NO )
NOCOMPRESS
DISTRIBUTE BY HASH ("table01_id");
CREATE INDEX "author_index" ON "public"."test_index_table01" ("author_id");</pre>
</li></ol>
</div>
<div>
<div class="familylinks">
<div class="parentlink"><strong>Parent topic:</strong> <a href="dws_sct_0013.html">MySQL Syntax Migration</a></div>
</div>
</div>