2014-10-09 41 views
1

在我的DB2,我创建了名称“样本”数据库。而且,在与Razor DB2客户端连接时,它可以连接到“SAMPLE”数据库,而不区分大小写。DB2数据库名称是区分大小写或不

例如,

JDBC:DB2://本地主机:50000 /样品

JDBC:DB2://本地主机:50000 /样本

JDBC:DB2://本地主机:50000 /样品

JDBC:DB2://本地主机:50000 /样品

钍都可以连接到DB2。但是当我使用它们的结果时,只有SAMPLE数据库可以显示结果。我想知道如何以“SAMPLE”数据库名称连接到DB2,并区分大小写。

+0

你能解释一下你所说的“当我把结果与他们,只有SAMPLE数据库能显示结果”是什么意思? – mustaccio 2014-10-09 02:39:20

+0

“SELECT * FROM TABLE(SNAP_GET_BP(CAST(NULL为varchar(255)),-1)),其中DB_NAME = '采样'” 可以显示结果。 – 2014-10-09 05:47:29

+0

改为“select * from TABLE(SNAP_GET_BP(CAST(NULL as varchar(255)),-1))where db_name ='sample'”无法显示结果。但它可以成功连接到SAMPLE数据库。 – 2014-10-09 05:48:21

回答

3

DB2数据库是不区分大小写SAMPlE = sample = SAMple。但是:

  • 某些工具需要大写才能工作。大概,他们考虑到实例目录(db2 list db directory
  • 数据库名称被改变为大写为内部识别并存储这样在数据库目录中。任何使用数据库名称的函数都应该是大写的。

此行为是类似于表。例如,EMPLOYEE = employee,但该表在数据库目录中存储为EMPLOYEE。但是,您可以通过用引号括起来以小写形式强制名称,例如"employee",但这被认为是不好的做法。另一方面,数据库名称不会保持案件被引号包围。

相关问题