达梦建表语句,插入语句,查询语,要注意和oracle不同

CREATE TABLE "TEST"."t1"
(
"id" INT NOT NULL,
"name" VARCHAR2(50)) STORAGE(ON "tbs", CLUSTERBTR) ;
操作已执行
已用时间: 3.080(毫秒). 执行号:1305.
SQL> call SP_TABLEDEF('TEST','t1');

行号     COLUMN_VALUE
---------- -----------------------------------------------------------------------------------------------------
1          CREATE TABLE "TEST"."t1"  (  "id" INT NOT NULL,  "name" VARCHAR2(50)) STORAGE(ON "tbs", CLUSTERBTR) ;

已用时间: 0.473(毫秒). 执行号:1306.
SQL> select * from TEST.t1;  --这样写在oracle里是可以的
select * from TEST.t1;
第1 行附近出现错误[-2106]:无效的表或视图名[T1].
已用时间: 0.387(毫秒). 执行号:0.

结果报错

插入语句
SQL> INSERT INTO  "TEST"."t1" ('id','name') VALUES (1,'aaa');
INSERT INTO  "TEST"."t1" ('id','name') VALUES (1,'aaa');

INSERT INTO  "TEST"."t1" ('id','name') VALUES (1,'aaa');
                                      *
第 1 行, 第 39 列[']附近出现错误[-2007]:
语法分析出错.
已用时间: 0.328(毫秒). 执行号:0.
SQL> INSERT INTO TEST.T1(ID, NAME) VALUES ( 1,'a1');
INSERT INTO TEST.T1(ID, NAME) VALUES ( 1,'a1');
第1 行附近出现错误[-2106]:无效的表或视图名[T1].
已用时间: 0.362(毫秒). 执行号:0.
SQL> INSERT INTO "TEST"."t1"(ID, NAME) VALUES ( 1,'a1');
INSERT INTO "TEST"."t1"(ID, NAME) VALUES ( 1,'a1');
第1 行附近出现错误[-2111]:无效的列名[ID].
已用时间: 0.280(毫秒). 执行号:0.
SQL> INSERT INTO "TEST"."t1"(id, name) VALUES ( 1,'a1');
INSERT INTO "TEST"."t1"(id, name) VALUES ( 1,'a1');
第1 行附近出现错误[-2111]:无效的列名[ID].
已用时间: 0.338(毫秒). 执行号:0.

结果报错全报错。
SQL> INSERT INTO "TEST"."t1"("id","name") VALUES ( 1,'a1');
影响行数 1

已用时间: 0.577(毫秒). 执行号:1307.
SQL> INSERT INTO "TEST"."t1"("id","name") VALUES ( 2,'a2');
影响行数 1

已用时间: 0.677(毫秒). 执行号:1308.
SQL> INSERT INTO "TEST"."t1"("id","name") VALUES ( 3,'a3');
影响行数 1

已用时间: 0.414(毫秒). 执行号:1309.


改为select * from "TEST"."t1";
SQL> select * from "TEST"."t1";

行号     id          name
---------- ----------- ----
1          1           a1
2          2           a2
3          3           a3

已用时间: 0.686(毫秒). 执行号:1310.

删除这张表

drop table "TEST"."t1";

SQL> CREATE TABLE TEST.T1(id INT NOT NULL,name VARCHAR2(50)) ;
操作已执行
已用时间: 3.850(毫秒). 执行号:1312.
SQL> INSERT INTO TEST.T1 (1,'aaa');
INSERT INTO TEST.T1 (1,'aaa');

INSERT INTO TEST.T1 (1,'aaa');
                             *
第 1 行, 第 37 列[1]附近出现错误[-2007]:
语法分析出错.
已用时间: 0.206(毫秒). 执行号:0.
SQL> INSERT INTO TEST.t1 (2,'aaa');
INSERT INTO TEST.t1 (2,'aaa');

INSERT INTO TEST.t1 (2,'aaa');
                             *
第 1 行, 第 37 列[2]附近出现错误[-2007]:
语法分析出错.
已用时间: 0.143(毫秒). 执行号:0.

正确的写法都要和建表语句的命名一样,都大写。
SQL> INSERT INTO TEST.T1(id,name) VALUES ( 3,'a3');
影响行数 1

已用时间: 0.707(毫秒). 执行号:1313.

查询就可以了

SQL> select * from test.t1;

行号     ID          NAME
---------- ----------- ----
1          3           a3

已用时间: 0.684(毫秒). 执行号:1314.

Logo

北京人形旗下天工造物具身智能开源社区,聚焦具身天工与慧思开物两大平台

更多推荐