首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在DB2中访问同名、不区分大小写的表

如何在DB2中访问同名、不区分大小写的表
EN

Stack Overflow用户
提问于 2012-10-17 23:08:41
回答 2查看 226关注 0票数 1

我创建了以下两个表,它们只是大小写有所不同:

tables.sql:

代码语言:javascript
复制
CREATE TABLE T1 (C1 INTEGER);
INSERT INTO T1 VALUES (1);
CREATE TABLE "t1" (C1 INTEGER);
INSERT INTO "t1" VALUES (2);
CREATE TABLE T2 (C1 INTEGER, "c1" integer);
INSERT INTO T2 VALUES (3, 4);

命令

代码语言:javascript
复制
db2 -tvf tables.sql

当我想直接从中电查询表时,我无法区分这两种情况。如何对表t1和表T1分别执行查询。c1和C1列是相同的吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-10-17 23:08:41

要从Windows中的CLP查询这些表,您必须执行以下操作:

对于表T1 (最简单的表):

代码语言:javascript
复制
db2 select * from T1

或者(这是Linux中的方式,因为*)

代码语言:javascript
复制
db2 "select * from T1"

对于表t1

代码语言:javascript
复制
db2 "select * from ""t1"""

对于列是相似的

代码语言:javascript
复制
db2 select C1 from T2

对于另一个

代码语言:javascript
复制
db2 "select ""c1"" from T2"

确保整个命令包含在引号中。如果您发出此命令:

代码语言:javascript
复制
db2 select ""c1"" from T2

它将返回C1。此命令的用法相同:

代码语言:javascript
复制
db2 select * from ""t1""

并返回T1。

票数 1
EN

Stack Overflow用户

发布于 2012-10-18 19:54:43

在Linux / Unix上,用反斜杠转义引号

代码语言:javascript
复制
db2 "INSERT INTO \"t1\" VALUES (...)"
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12937463

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档