11.如果是單字符,如“’”如何組合拼接?
答:同樣可以使用CHAR(),進行ASCii 轉換
例如:DECLARE VC_CHAR CHAR(1);
DECLARE VC_TEMP CHAR(10);
SET VC_CHAR = CHAR(39); -- 39 IS ‘ ASCii
12.Db2如何創建約束?
答:語法如下:ALTER TABLE XHZQ.INFO_SKU_TAB
ADD CONSTRAINT XHZQ.CKC_C_DIANZICHENG_FLA_INFO_SKU
CHECK( C_DIANZICHENG_FLAG IN ( '0' , '1' , '2' ) ) ;
13.Db2下如何創建索引?
答:CREATE UNIQUE INDEX UNIQUE_NAME ON PROJECT (PROJNAME)
CREATE INDEX JOB_BY_DPT ON EMPLOYEE (WORKDEPT, JOB)
14.Sybase 中的全局變量@@rowcount,db2中如何使用?
答:db2中也有此全局變量,具體使用如下:
通過聲明變量tempCount,使用語句
DECLARE TEMPCOUNT BIGINT DEFAULT = 0;
GET DIAGNOSTICS tempCount = ROW_COUNT;
獲得,DB2下的ROW_COUNT等價於@@rowcount
15.DB2是如何管理事務的?
答:DB2中事務管理,也是支持自動事務管理和用戶管理事務。
CREATE PROCEDURE XXX.PROC_NAME
( 。。。。。。。)
BEGIN AUTMIC --系統自動管理事務
END
BEGIN
如果系統自動管理事務,腳本中不允許出現COMMIT, ROLLBACK ,
使用這種方式,如果使用捆綁SQLCODE,SQLSTATE和游標,可以達到系統自動控制游標的功能。
IF (XX) THEN
COMMIT WORK HOLD;
ELSE
ROLLBACK WORK HOLD;
END IF;
END
16.DB2的VARCHAR()函數用法?
答:VARCHAR(Par,length)功能,將par轉換為變長字符串
par : 參數character, integer , decimal , numeric, float ,graph
length: 參數字符串長度
例如:SELECT VARCHAR(EMPNO,10)
INTO :VARHV
FROM EMPLOYEE
17.Db2的SING()函數用法?
答:sing(par) 功能判斷par的大小和零比較
如果par < 0 返回 –1
如果par > 0 返回 1
如果par = 0 返回 0
例如:SELECT SIGN(:PROFIT)
FROM EMPLOYEE
18.DB2如何創建用戶自定義函數?
答:給出例子如下
/*
function name to_char
argument: (in) timestamp, format
comm:將日期轉換為制定的字符格式
ruturn:制定格式的字符串
author: Dekker date: 2003-09-12
*/
CREATE FUNCTION xhzq_db.to_char ( t1 TIMESTAMP,