Wednesday, July 27, 2011

one case for sqlexception with msg NO Data

while writing PLSQL in store procedure ,if we use select column_name into variable where bla,bla statement,if it returned resultset is empty, then it will throw sqlexception with error massage says that "no data",best solution is that check existence of the records before use select into.

Friday, July 8, 2011

call function from sqlplus

select LINE_CARD_PKG.GET_NEW_LINE_CARD_SEQ() from DUAL;

what is BondingGroup in cmts

Cisco IOS Release 12.3(21)BC and 12.3(21a)BC3 support the DOCSIS 3.0 Downstream Channel
Bonding feature, which is the key feature of the Cisco Cable Wideband Solution, Release 1.0.
In the Cisco Cable Wideband Solution, Release 1.0, the DOCSIS 3.0 Downstream Channel Bonding
feature supports downstream wideband channels consisting of multiple bonded RF channels. The
solution provides wideband data services over existing hybrid fiber coax (HFC) networks. With
wideband data services, multiple RF channels are aggregated into a single logical wideband
channel (bonding group) that delivers higher bandwidth to the wideband cable modem than was
previously possible with DOCSIS 2.0 technology. This aggregation of RF channels is referred to as
“channel bonding.”

what is MacDomain in m-cmts linecard

A MAC domain is responsible for all MAC Management Messages to the set of cable modems that are
registered on that MAC Domain. A cable modem is registered to only a single MAC Domain.

Thursday, July 7, 2011

code to call Store procedure and display result in SQLDeveloper

DECLARE
P_CHASSIS_SEQ NUMBER;
P_MODEL_SEQ NUMBER;
P_LC_CURSOR LINE_CARD_PKG.CURSOR_TYPE;
LC_CURSOR LINE_CARD_PKG.CURSOR_TYPE;
TYPE A IS RECORD(
SEQ NUMBER,
NAME VARCHAR2(128)
);
REC A;
BEGIN
P_CHASSIS_SEQ := 617;
P_MODEL_SEQ := 10;
P_LC_CURSOR := NULL;

LINE_CARD_PKG.GET_AVAILABLE_LC_BY_CHSEQ ( P_CHASSIS_SEQ => P_CHASSIS_SEQ,P_MODEL_SEQ => P_MODEL_SEQ,P_LC_CURSOR => P_LC_CURSOR) ;
LC_CURSOR := P_LC_CURSOR;
LOOP
FETCH P_LC_CURSOR INTO REC ;
EXIT WHEN P_LC_CURSOR%NOTFOUND;
dbms_output.put_line('sequence:'||REC.SEQ||'--'||'NAME:'||REC.NAME);
END LOOP ;
close P_LC_CURSOR ;

END;

another way call SP from TOAD

DECLARE
P_CHASSIS_SEQ NUMBER;
P_MODEL_SEQ NUMBER;
LC_CURSOR LINE_CARD_PKG.CURSOR_TYPE;
P_LC_CURSOR LINE_CARD_PKG.CURSOR_TYPE;
BEGIN
P_CHASSIS_SEQ := 338;
P_MODEL_SEQ := 15;
P_LC_CURSOR := NULL;
LC_CURSOR := NULL;

LINE_CARD_PKG.Get_Available_LC_By_ChSeq ( P_CHASSIS_SEQ, P_MODEL_SEQ, P_LC_CURSOR) ;
:LC_CURSOR :=P_LC_CURSOR;

END;


or use named parameters like this

DECLARE
P_CHASSIS_SEQ NUMBER;
P_MODEL_SEQ NUMBER;
P_LC_CURSOR LINE_CARD_PKG.CURSOR_TYPE;
LC_CURSOR LINE_CARD_PKG.CURSOR_TYPE;
BEGIN
P_CHASSIS_SEQ := 617;
P_MODEL_SEQ := 10;
P_LC_CURSOR := NULL;

LINE_CARD_PKG.Get_Available_LC_By_ChSeq ( P_CHASSIS_SEQ => P_CHASSIS_SEQ,
P_MODEL_SEQ => P_MODEL_SEQ,
P_LC_CURSOR => P_LC_CURSOR) ;
:LC_CURSOR :=P_LC_CURSOR;
END;

how to call a store procedure and display result in TOAD

if I have store procedure located in a package,I want call it in toad for some test,I can do it like this

exec schema.package.Get_Available_LC_By_ChSeq(338,15,:P_CURSOR)
228 and 15 is input parameter,P_CURSOR is output ref cursor
when click run TOAD will ask for output parameter type ,just choose cursor type.
then output parameter(cursor) will display in Data Grid tab of the TOAD.

Tuesday, July 5, 2011

sign "(+)" and "=>" in pl/sql

if (+) apears in left of "=",then it means left outer join
if (+) appears in right of "=",then it means right outer join
=> mean give specific parameter a value,ex
username=>'dojone'

log4j level

Log4J Levels

Log4J Levels

Loggers may be assigned levels. The set of possible levels, that is DEBUG, INFO, WARN, ERROR and FATAL are defined in the org.apache.log4j.Level class.

If a given logger is not assigned a level, then it inherits one from its closest ancestor with an assigned level.

The root logger resides at the top of the logger hierarchy. It always exists and always has an assigned level.

The logger is the core component of the logging process. In log4j, there are 5 normal levels Levels of logger available (not including custom Levels), the following is borrowed from the log4j API (http://jakarta.apache.org/log4j/docs/api/index.html):
static Level DEBUG - The DEBUG Level designates fine-grained informational events that are most useful to debug an application.
static Level INFO - The INFO level designates informational messages that highlight the progress of the application at coarse-grained level.
static Level WARN - The WARN level designates potentially harmful situations.
static Level ERROR - The ERROR level designates error events that might still allow the application to continue running.
static Level FATAL - The FATAL level designates very severe error events that will presumably lead the application to abort.

In addition, there are two special levels of logging available: (descriptions borrowed from the log4j API http://jakarta.apache.org/log4j/docs/api/index.html):

static Level ALL -The ALL Level has the lowest possible rank and is intended to turn on all logging.
static Level OFF - The OFF Level has the highest possible rank and is intended to turn off logging.