我是db2的新手。我已经安装了db2,需要通过终端运行查询。我有一台LINUX机器。
安装后运行以下查询或任何查询,如create database,它将显示错误
db2 => start database manager
SQL1092N "ROOT" does not have the authority to perform the requested command
or operation.
当我在Linux上运行Db2 CLP (命令行处理器)并保持在CLP中时,箭头键不能像预期的那样工作。
例如:不是向我显示我执行的前面的命令,而是按下向上箭头生成:^[A并按左箭头生成:^[[D.
见下文:
[db2inst1@willow ~]$ db2
(c) Copyright IBM Corporation 1993,2007
Command Line Processor for DB2 Client 11.5.0.0
You can issue database manager commands and SQL statements from the command
prompt.
我希望我的一个db2用户能够对通过HADR复制到辅助数据库的主数据库发出查询。
在我的linux机器上的那个用户叫做EUSR。
现在作为用户db2inst1 (即具有管理权限的用户)登录,我调用以下命令
db2 "START HADR ON DATABASE MAMBO USER USR AS PRIMARY"
Enter current password for user:
当我给出正确的linux密码时,我得到了以下结果
SQL1092N "EUSR" does not have the authority to
perform the reques
我的一个表的列名有问题。
我的DB2版本是db2/LINUXX866411.1.0。我在CentOS Linux版本7.2.1511上运行它。我的IBM Data Studio版本是4.1.2。
在模式"COMPRAS“的表"PERIODO”中,该列被命名为"NRO_AÑO“。
当我执行简单的查询时
SELECT NRO_AÑO
FROM COMPRAS.PERIODO
它会产生以下错误:
"NRO_AÑO" is not valid in the context where it is used.. SQLCODE=-206, SQLSTATE=427
在运行SQL文件之前,我想检查一下是否存在DB2连接。
解释:
@echo off
if "%DB2CLP%" == "" db2cmd /c /i /w "%0" %* & goto :eof
SET DB2CLP=**$$**
db2 -x connect to XXXXX user XXXXXXXX USING XXXXXXXX
db2 -x set current schema='XXXXXXXX'
db2 -tvsmf query1.sql
db2 -tvsmf query2.sql
db2 -tvsmf que
我已经安装了Linux的DB2 Express-C V9.7、unixODBC php5-odbc和iSeri-5.4.0-1.6驱动程序,但是当我试图连接到DB2服务器时,请返回以下消息:
[unixODBC][IBM][iSeries Access ODBC Driver]Communication link failure. comm rc=10061 -
CWBCO1049 - The iSeries server application is not started, SQL state 08004 in SQLConnect
我注意到在tcpdump中,php尝试在端口8741而
我试图使用检查IBM中所有表的所有计数。当我尝试运行这个DB2 SQL脚本时
db2 "SELECT 'SELECT COUNT(*) AS ROW_COUNT FROM '|| tabschema || '.' || tabname || ';' FROM sysibmadm.admintabinfo WHERE tabschema not like 'SYS%' order by tabschema, tabname asc" > script
Linux将返回
bash: script: Permiss
我正在DB2命令行中执行数据并发、锁定活动和运行时间命令,以量化执行查询的等待时间。
代码:
> C:\Program File\IBM\SQLLIB\BIN>time db2 "Select * from tb1"
> The system cannot accept the time entered.
> Enter the new time:
我怎么才能解决这个问题?我尝试输入一个时间,但它不会显示查询所用的时间。
我对DB2非常陌生,我对这些命令非常不熟悉。任何帮助都将不胜感激。
谢谢
我有一个简单的DB2 SQL查询:
SELECT DISTINCT a FROM (SELECT a, b FROM schema.table WHERE APPR_STATUS = 'Approved');
当我在DB2 DB上的DBeaver中的任何表上尝试这样的示例查询时,我会得到以下错误:
SQL Error [56038]: ATTEMPT TO USE A FUNCTION WHEN THE APPLICATION COMPATIBILITY SETTING IS SET FOR A PREVIOUS LEVEL. SQLCODE=-4743, SQLSTATE=5
我正在编写一个KSH脚本来接受一个.sql文件参数,后跟要编译该文件的每个模式。该脚本假定.sql文件是DB2 9.7过程。
我想我被终止字符的db2命令的语法卡住了。我们始终使用at符号('@'),但是下面的代码片段失败,并出现错误"DB21001E the option "-@“is DB21001E the option”db2‘command or in the DB2OPTIONS variable“”。“任何帮助都将不胜感激。
#!/bin/ksh
. $IBM_DB_DIR/db2profile
db2 connect to dwdev3
cons
我是在unix环境中运行db2命令的新手,所以我一直试图从bash脚本连接到db2实例。不过,我在这里遇到了错误,我的脚本是这样的:
#!/bin/bash
DB2="java com.ibm.db2.clp.db2"
$DB2 "connect to <db2 server here> user **** using ****"
我得到了一个DSNC102I : The option "connect to <db2 server> user **** using ****" specified after the &
这里可能有一个非常简单的解决方案,但我可能没有使用正确的搜索词。我有一个在shell脚本中运行的sql查询。我得到了我想要的结果,但是,我也得到了sql查询作为结果的一部分。我如何抑制这一点而只显示结果呢?
我的脚本:
#!/usr/bin/sh
db2 connect to MYDB >/dev/null 2>&1;
db2 -x -v "select A, B, C from MYTABLE";
db2 connect reset >/dev/null 2>&1;
我的输出如下所示:
select A, B, C from MYTA
Select totalvalue from user
此DB2查询的输出如下:0000000000000000000000072834.37000、00000000000000000000147532.26000、0000000000000000000000145485.89000
我想显示如下,72834.37,147532.26,145485.89
这在DB2中是可能的吗?提前感谢!