DB_Links - strange results

Okay - I get one problem solved & now I encounter another. :) But - this is good, because I am learning. (words of comfort to self)
I have two databases:
DB1 & DB2
I am trying to take the results from a certain schema & table from DB2 and 'import' them into a new table in DB1.
Here is the query that I am executing (from DB1 - the target):
CREATE TABLE MySchema.stageComments
owner, table_name, table_type, comments
AS SELECT "OWNER", "TABLE_NAME", "TABLE_TYPE", "COMMENTS"
FROM AnotherSchema.TABLE_COMMENTS@LinkToAnotherDB;
Note: the db_link "LinkToAnotherDB" is DB2.
Now - that's all great & exciting. The query successfully executes and creates a stageComments table inside MySchema (DB1).
However, when I go to do a record count in the stageComments (DB1) table - I get x amount of rows.
The source table TABLE_COMMENTS (DB2), however, really has y number of rows.
Why is it that not all of the rows were imported/selected? Any ideas?

Are you selecting from the view for both your insert statement and for your count? If not, the view may have predicates which limit the number of rows you can see compared to the table.
On a similar note, are you using the same user to do both queries? Can you actually log into DB2 as the user defined in the db_link and do the count. Does that match one of your other counts, or is it a different number?
Is the table underlying the view you are selecting being actively updated while you do the insert? You will only be able to see the rows that existed at the time your query started.
HTH
John

Similar Messages

  • Strange result from insert into...select query

    Hello guys,
    I need your preciuos help for a question maybe simple, but that I can't explain by myself!
    I have a query of "insert into...select" that, as I have explained in the title, returns a strange result. In facts, If I execute ONLY the SELECT statement the query returns the expected result (so 2 rows); instead If I execute the entire statement, that is the "insert into...select", the query returns 0 rows inserted!!
    Following an example of the query:
    INSERT
    INTO TITOLI_ORI
    COD_TITOLO_RICCONS ,
    D_ESTRAZIONE ,
    COD_SOCIETA ,
    COD_PIANO_CONTABILE ,
    COD_CONTO_CONTABILE ,
    COD_RUBRICATO_STATISTICO_1 ,
    COD_NDG ,
    NUM_ESEGUITO ,
    CUR_IMPORTO_RICCONS ,
    CUR_IMPORTO_BICO ,
    FLG_MODIFICATO ,
    CUR_NON_ASSEGNATO ,
    FLG_QUOTATO ,
    COD_CATEG ,
    TIP_COPERTURA ,
    TIPTAS_TITOLO
    SELECT NEWID,
    '28-feb-2111',
    COD_SOCIETA,
    COD_PIANO_CONTABILE,
    COD_CONTO_CONTABILE,
    COD_RUBRICATO_STATISTICO_1,
    COD_NDG,
    NUM_ESEGUITO,
    CUR_VAL_IMPEGNI,
    'ABC' as CUR_IMPORTO_BICO,
    0 as FLG_MODIFICATO,
    NULL as CUR_NON_ASSEGNATO,
    FLG_QUOTATO,
    COD_CATEG,
    TIP_COPERTURA,
    TIP_TASSO
    FROM
    (SELECT S.COD_SOC AS COD_SOCIETA,
    S.TIP_PIANO_CNTB AS COD_PIANO_CONTABILE,
    S.COD_CONTO_CNTB AS COD_CONTO_CONTABILE,
    S.COD_RUBR_STAT AS COD_RUBRICATO_STATISTICO_1,
    TRC.COD_RAGGR_IAS AS COD_RAGGRUPPAMENTO_IAS,
    TRC.COD_NDG AS COD_NDG,
    TRC.COD_ESEG AS NUM_ESEGUITO,
    CAST((TRC.IMP_PLUS_MINUS_VAL/TRC.IMP_CAMB) AS FLOAT) AS CUR_VAL_IMPEGNI,
    TRC.TIP_QUOTAZ AS FLG_QUOTATO,
    TRC.COD_CAT_TIT AS COD_CATEG,
    TIP_COP AS TIP_COPERTURA,
    T.TIP_TASSO AS TIP_TASSO
    FROM S_SLD_CNTB S
    INNER JOIN
    (SELECT DISTINCT COD_SOC,
    TIP_PIANO_CNTB,
    COD_CONTO_CNTB,
    COD_RUBR_STAT ,
    COD_INTER_TIT AS COD_INTER
    FROM S_COLLEG_CONTO_CNTB_TIT
    WHERE COD_SOC = 'ME'
    ) CCC
    ON S.COD_SOC = CCC.COD_SOC
    AND S.TIP_PIANO_CNTB = CCC.TIP_PIANO_CNTB
    AND S.COD_CONTO_CNTB = CCC.COD_CONTO_CNTB
    AND S.COD_RUBR_STAT = CCC.COD_RUBR_STAT
    INNER JOIN S_TIT_RICCONS TRC
    ON CCC.COD_INTER = TRC.COD_INTER_TIT
    AND CCC.COD_SOC = TRC.COD_SOC
    AND TRC.COD_RAGGR_IAS = RTRIM('VALUE1 ')
    AND TRC.COD_RAGGR_IAS NOT IN ('VALUE2')
    AND TRC.DES_TIP_SLD_TIT_RICCONS IN ('VALUE3')
    AND TRC.DES_MOV_TIT = RTRIM('VALUE4 ')
    AND TRC.COD_CAT_TIT = RTRIM('VALUE4 ')
    AND TRC.COD_INTER_TIT = RTRIM('VALUE5')
    AND '28-feb-2011' = TRC.DAT_RIF
    LEFT JOIN S_TIT T
    ON T.COD_INTER_TIT = TRC.COD_INTER_TIT
    AND T.COD_SOC = TRC.COD_SOC
    AND '28-feb-2011' = T.DAT_RIF
    INNER JOIN S_ANAG_SOGG AG
    ON TRC.COD_NDG = AG.COD_NDG
    AND AG.COD_SOC = TRC.COD_SOC
    AND '28-feb-2011' = AG.DAT_RIF
    WHERE S.DAT_RIF = '28-feb-2011'
    AND (S.FLG_ANULL_BICO = 0
    OR S.FLG_ANULL_BICO IS NULL)
    AND S.COD_SOC = 'V6'
    AND LENGTH(RTRIM(S.COD_CONTO_CNTB)) = 10
    AND S.TIP_PIANO_CNTB = 'V7'
    AND TRC.IMP_PLUS_MINUS_VAL < 0
    AND SUBSTR(S.COD_CONTO_CNTB,1,7) IN (RTRIM('VALUE8 '))
    Thanks a lot

    Right, I have executed this steps:
    - I have changed the query with the select count(*)
    - Changed the insert into with the select count(*)
    - Executed the insert into
    These are the result:
    SQL> select count(*) from TITOLI_ORI2;
    COUNT(*)
    1
    BUT:
    SQL> select * from TITOLI_ORI2;
    A
    0
    The insert into that I've modified is this:
    INSERT INTO bsc.TITOLI_ORI2
    select count(*)
    FROM
    (SELECT bsc.NEWID,
    TO_DATE('28-feb-2111','DD-MON-YYYY') as data,
    COD_SOCIETA,
    COD_PIANO_CONTABILE,
    COD_CONTO_CONTABILE,
    COD_RUBRICATO_STATISTICO_1,
    COD_NDG,
    NUM_ESEGUITO,
    CUR_VAL_IMPEGNI,
    'ABC' AS CUR_IMPORTO_BICO,
    0 AS FLG_MODIFICATO,
    NULL CUR_NON_ASSEGNATO,
    FLG_QUOTATO,
    COD_CATEG,
    TIP_COPERTURA,
    TIP_TASSO
    FROM
    (SELECT S.COD_SOC AS COD_SOCIETA,
    S.TIP_PIANO_CNTB AS COD_PIANO_CONTABILE,
    S.COD_CONTO_CNTB AS COD_CONTO_CONTABILE,
    S.COD_RUBR_STAT AS COD_RUBRICATO_STATISTICO_1,
    TRC.COD_RAGGR_IAS AS COD_RAGGRUPPAMENTO_IAS,
    TRC.COD_NDG AS COD_NDG,
    TRC.COD_ESEG AS NUM_ESEGUITO,
    CAST((TRC.IMP_PLUS_MINUS_VAL/TRC.IMP_CAMB) AS FLOAT) AS CUR_VAL_IMPEGNI,
    TRC.TIP_QUOTAZ AS FLG_QUOTATO,
    TRC.COD_CAT_TIT AS COD_CATEG,
    TIP_COP AS TIP_COPERTURA,
    T.TIP_TASSO AS TIP_TASSO
    FROM bsc.S_SLD_CNTB S
    INNER JOIN
    (SELECT DISTINCT COD_SOC,
    TIP_PIANO_CNTB,
    COD_CONTO_CNTB,
    COD_RUBR_STAT ,
    COD_INTER_TIT AS COD_INTER
    FROM bsc.S_COLLEG_CONTO_CNTB_TIT
    WHERE COD_SOC = 'ME'
    ) CCC
    ON S.COD_SOC = CCC.COD_SOC
    AND S.TIP_PIANO_CNTB = CCC.TIP_PIANO_CNTB
    AND S.COD_CONTO_CNTB = CCC.COD_CONTO_CNTB
    AND S.COD_RUBR_STAT = CCC.COD_RUBR_STAT
    INNER JOIN bsc.S_TIT_RICCONS TRC
    ON CCC.COD_INTER = TRC.COD_INTER_TIT
    AND CCC.COD_SOC = TRC.COD_SOC
    AND TRC.COD_RAGGR_IAS = RTRIM('HFT ')
    AND TRC.COD_RAGGR_IAS NOT IN ('GPO')
    AND TRC.DES_TIP_SLD_TIT_RICCONS IN ('DISPONIBILI')
    AND TRC.DES_MOV_TIT = RTRIM('CONSEGNARE ')
    AND TRC.COD_CAT_TIT = RTRIM('OBBLIGAZIONE ')
    AND TRC.COD_INTER_TIT = RTRIM('334058')
    AND '28-feb-2011' = TRC.DAT_RIF
    LEFT JOIN bsc.S_TIT T
    ON T.COD_INTER_TIT = TRC.COD_INTER_TIT
    AND T.COD_SOC = TRC.COD_SOC
    AND '28-feb-2011' = T.DAT_RIF
    INNER JOIN bsc.S_ANAG_SOGG AG
    ON TRC.COD_NDG = AG.COD_NDG
    AND AG.COD_SOC = TRC.COD_SOC
    AND '28-feb-2011' = AG.DAT_RIF
    WHERE S.DAT_RIF = '28-feb-2011'
    AND (S.FLG_ANULL_BICO = 0
    OR S.FLG_ANULL_BICO IS NULL)
    AND S.COD_SOC = 'ME'
    AND LENGTH(RTRIM(S.COD_CONTO_CNTB)) = 10
    AND S.TIP_PIANO_CNTB = 'IS'
    AND TRC.IMP_PLUS_MINUS_VAL < 0
    AND SUBSTR(S.COD_CONTO_CNTB,1,7) IN (RTRIM('P044C11 '))
    Another time the strange result returns!!
    And I've created the table TITOLI_ORI2 as create table TITOLI_ORI2 (a number); to contain the number result of the query.

  • Strange symbols appear on my desktop, producing even stranger results!

    Strange symbols appear on my desktop, producing even stranger results!

    These symbols are for short cuts. could be a command to move text insertion point to beginning of document or if you have been in system preferences keyboard and clicked on the modifier key and set one of the options it would be for setting cap lock. Don't know why you are showing a screen  shot of it. Have you clicked on it. Have you been doing any work with documents. You could go to disk utilities and repair permissions or do an pram reset. Command/Option?P/R while holding down the power button for three chimes and release.

  • Help - count function returns strange results

    hi everyone,
    here's my scenario: i'm trying to get the NUMBER OF REPORTS and NUMBER OF
    IMAGES GROUP BY MONTH from the two tables below.
    REPORT
    reportid(*primary key)
    date
    IMAGE
    reportid(*foreign key referring to report's table)
    image
    sample output:
    MONTH NO.OF REPORTS NO. OF IMAGES
    feb 01 10 9
    mar 01 12 8
    my SQL goes like this:
    select to_char(date, 'month-yy'),
    count(REPORT.reportid), count(IMAGE.reportid)
    from REPORT, IMAGE
    where REPORT.reportid = IMAGE.reportid
    group by to_char(date, 'month-yy')
    the above sql yielded strange results, number of images is equal to the number of reports, which is of course wrong! as one report may or may not contain one or more image.
    i dont know what's wrong with the above statement, but if i were to group it
    by REPORTID and DAY rather than MONTH, then amazingly it works! what's
    wrong with the count, why does it give me the same result if i group by
    MONTH.
    can anyone shed some light on this?

    try using the following example:
    Table TEST_REPORT
    RPTID RPTDATE
    1 02-JAN-01
    3 02-JAN-01
    2 02-JAN-01
    5 11-FEB-01
    6 11-FEB-01
    7 11-FEB-01
    Table TEST_IMAGE
    RPTID IM
    1 1
    2 1
    3 1
    SQL:
    select to_char(rptdate,'MON-YYYY'),
    sum(decode(a.rptid,null,0,1)) report_cnt,
    sum(decode(b.rptid,null,0,1)) image_cnt
    from test_report a, test_image b
    where a.rptid = b.rptid(+)
    group by to_char(rptdate,'MON-YYYY');
    <BLOCKQUOTE><font size="1" face="Verdana, Arial, Helvetica">quote:</font><HR>Originally posted by skcedric:
    hi everyone,
    here's my scenario: i'm trying to get the NUMBER OF REPORTS and NUMBER OF
    IMAGES GROUP BY MONTH from the two tables below.
    REPORT
    reportid(*primary key)
    date
    IMAGE
    reportid(*foreign key referring to report's table)
    image
    sample output:
    MONTH NO.OF REPORTS NO. OF IMAGES
    feb 01 10 9
    mar 01 12 8
    my SQL goes like this:
    select to_char(date, 'month-yy'),
    count(REPORT.reportid), count(IMAGE.reportid)
    from REPORT, IMAGE
    where REPORT.reportid = IMAGE.reportid
    group by to_char(date, 'month-yy')
    the above sql yielded strange results, number of images is equal to the number of reports, which is of course wrong! as one report may or may not contain one or more image.
    i dont know what's wrong with the above statement, but if i were to group it
    by REPORTID and DAY rather than MONTH, then amazingly it works! what's
    wrong with the count, why does it give me the same result if i group by
    MONTH.
    can anyone shed some light on this? <HR></BLOCKQUOTE>
    null

  • Strange result about regular expressions

    Hello everybody,
    I write these codes to try regular expressions in Java, but there are some strang results. I read the reference like Sun Java Tutorials. however, I cann't find the problem.
    Environnement:
    WindowsXP Home + NetBeans IDE 5.0 + JDK 1.5
    Input String:
    "I write these codes to try regular expressions in Java, but it doesn't work. I read some reference like Sun Java Tutorials. Then, always cann't find the problem. Could you help me? Thanks."
    My codes:
    public static void main(String[] args) throws Exception, IOException {
    P.rintln("Let's go!");
    Date start = new Date();
    if(args.length != 1) {
    P.rintln("Input Error! Input format: java javaclass [directory path]");
    System.exit(0);
    StringBuffer sb = new StringBuffer();
    String input = TextFile.read(args[0]);
    sb = addSectionEelement(input, "re");
    P.rintln(sb.toString());
    P.rintln("Ok, it's over");
    Date end = new Date();
    System.out.println("It spends " + (end.getTime() - start.getTime()) + " ms.");
    public static StringBuffer addSectionEelement(String input, String regex) {
    Matcher m = Pattern.compile(regex).matcher(input);
    StringBuffer sb = new StringBuffer();
    int count = 0;
    while(m.find()) {
    count++;
    P.rintln(m.group());
    P.rintln("Found " + count + " fois.");
    return sb;
    Output:
    run:
    Let's go!
    Found 0 fois.
    Ok, it's over
    It spends 16 ms.
    BUILD SUCCESSFUL (total time: 0 seconds)
    However if I change the Bold line by
    sb = addSectionEelement(input, "r");
    The resultats become:
    run:
    Let's go!
    r
    r
    r
    r
    r
    r
    r
    r
    r
    r
    r
    Found 11 fois.
    Ok, it's over
    It spends 15 ms.
    BUILD SUCCESSFUL (total time: 0 seconds)
    I have no idea about it. And you?
    Thanks

    Hi guys,
    I re-examine the codes. In fact, it's the problem of encodings of the input file.
    See u

  • Strange results

    Hi guys,
    Sorry to ask such a simple question but I can't seem to work out why Im get strange results when I do the following:
    double t = 1564654654 / 1000000000;
           System.out.println(t);The result I get is 1.0 but I should get 1.564654654
    Any help would be great
    Many thanks
    Alex

    When you divide an int by an int, you get an int. Then you assign the int value to a double.
    Either use the cast as posted previously, or use a decimal point with one of the numbers (which will cause Java to handle it as a double.)

  • Strange results with Insert statement having select query

    Hi all,
    I am facing a strange issue with Insert statement based on a select query having multiple joins.
    DB- Oracle 10g
    Following is the layout of my query -
    Insert into Table X
    Select distinct Col1, Col2, Col3, Col4, Function(Col 5) from Table A, B
    where trunc(updated_date) > = trunc(sysdate-3)
    and join conditions for A, B
    Union
    Select Col1, Col2, Col3, Col4, Function(Col 5) from Table C, D
    trunc(updated_date) > = trunc(sysdate-3)
    and join conditions for C, D
    Union
    .... till 4 unions. all tables are residing in the local Database and not having records more than 50,000.
    If I execute above insert in a DBMS job, it results into suppose 50 records where as if I execute the select query it gives 56 records.
    We observed following things-
    a) no issue with size of tablespace
    b) no error while inserting
    c) since query takes lot of time so we have not used Cursor and PLSQL block for inserting.
    d) this discrepancy in number of records happens frequently but not everytime.
    e) examined the records left out from the insert, there we couldn't find any specific pattern.
    f) there is no constraint on the table X in which we are trying to insert. Also tables A, B, C....
    I went through this thread -SQL insert with select statement having strange results but mainly users are having either DB Links or comparison of literal dates, in my case there is none.
    Can somebody explain why is the discrepancy and what is the solution for it.
    Or atleast some pointers how to proceed with the analysis.
    Edited by: Pramod Verma on Mar 5, 2013 4:59 AM
    Updated query and added more details

    >
    Since I am using Trunc() in the where clause so timing should not matter much. Also I manually ruled out records which were updated after the job run.
    >
    The first rule of troubleshooting is to not let your personal opinion get in the way of finding out what is wrong.
    Actually this code, and the process it represents, is the most likely CAUSE of the problem.
    >
    where trunc(updated_date) > = trunc(sysdate-3)
    >
    You CANNOT reliably use columns like UPDATED_DATE to select records for processing. Your process is flawed.
    The value of that column is NOT the date/time that the data was actually committed; it is the date/time that the row was populated.
    If you insert a row into a table right now, using SYSDATE (8am on 3/5/2013) and don't commit that row until April your process will NEVER see that 3/5/2013 date until April.
    Here is the more typical scenario that I see all the time.
    1. Data is inserted/updated all day long on 3/4/2013.
    2. A column, for example UPDATED_DATE is given a value of SYSDATE (3/4/2013) in a query or by a trigger on the table.
    3. The insert/update query takes place at 11:55 PM - so the SYSDATE values are for THE DAY THE QUERY BEGAN
    4. The data pull begins at 12:05 am (on 3/5/2013 - just after midnight)
    5. The transaction is COMMITTED at 12:10 AM (on 3/5/2013); 5 minutes after the data pull began.
    That data extract in step 4 will NEVER see those records! They DO NOT EXIST when the data pull query is executed since they haven't been committed.
    Even worse, the next nights data pull will not see them either! That is because the next pull will pull data for 3/5/2013 but those records have a date of 3/4/2013. They will never get processed.
    >
    Job timing is 4am and 10pm EST
    >
    Another wrinkle is when data is inserted/updated from different timezones and the UPDATED_DATE value is from the CLIENT pc or server. Then you can get even more data missed since the client dates may be hours different than the server date used for the data pull process.
    DO NOT try to use UPDATED_DATE type columns to do delta extraction or you can have this issue.

  • Strange result for outer join with rownum

    I'm using rownum in join condition of left outer join query but i'm getting strange results.
    Query is:
    Select * from table1 left outer join table2 on table1.id = table2.id or rownum=1
    Data in table1 is
    id
    7
    8
    9
    Data in table2 is
    id
    10
    11
    12
    Result of above query in Oracle 9.2.0.1 is
    table1.id table2.id
    7 10
    7 11
    7 12
    8 10
    8 11
    8 12
    9 10
    9 11
    9 12
    Even if change is rownum related condition to like rownum >2 even than i'm getting same result.
    In case of inner join, the above condition gives results as required.
    Can anybody explain the result or is it a bug?

    could you please explain why you are using rownum.
    You may have a look at the following link explaining rownum and you should understand why you got this result, keep in mind that you are using an OR condition.
    http://download-west.oracle.com/docs/cd/B10501_01/server.920/a96540/sql_elements6a.htm#4295

  • Strange Results keying out Green Screen Using Keylight

    Hi,
    I'm keying out a green screen using keylight. When I look at the view "Status" in keylight I notice a strange result that I can't seem to resolve. Inside the solid area of the matte (the actor) his pants and shoes area are filled with tiny light green dots. They seem to be causing distortion on my final render.
    No matter what adjustments I make to the matte I can't seem to get rid of these. I've attached a few small GIFs to show the issue.
    Is there anyway to remove these dots so they are "solid" within the matte or a way to color correct them inside the solid area of the matte in the final result?
    Any advise would be greatly appreciated.
    Regards,

    That's what the Despot options in the Screen Matte section are for. Alternative options include Minimax, Simple Chocker or third-party plug-ins like Re:Fill from RevisionFX. Also make good use of the various rollback options to control your Alpha levels.
    Mylenium

  • Dvd burning from idvd with strange results

    I have made a short 5 minute movie in FCP and exported it to QuickTime as I have done numerous times before. I created a menu in IDVD and then dragged QT file in. Everything looks great and plays on screen great. Then I burn the DVD. Once done I put it on TV via a different DVD player and it plays however about a minute into the video on the top of the screen I see part of another image. It almost looks like part of my G4 background screen (which is a picture) has somehow leaked through and gotten burned onto this dvd. Anyhow, I thought it was a bad DVD so burned another (TDK 8x DVD-r). Same thing happened again. Even when I put this burned DVD on my G-4 and play it I still have weird image. I went back and checked the movie again in FCP and then re-exported to QT as a self contained movie and did the whole IDVD thing all over again. Still has the weird image leaking through. By the way, before burning I did play the QT file through QT and that plays perfect! It also plays perfect through FCP. I am concerned it could be my drive. Any suggestions or hints.

    Well I discovered the problem previously posted by me concerning dvd burning with strange results. I found the exact spot in the burned dvd where the video had the other image appear along the top and then went to FCP and found the exact spot on it. Lo and behold on FCP at that exact spot in the video a "marker" had been inserted. I cleared all markers and re-exported and burned again in idvd and everything works perfectly. So apparently the marker insert in FCP caused all the problems.

  • Strange results when receiving mail sent form mail.app

    Hi all,
    I've searched these forums for an answer to this problem but I didn't find anything that seemed to fit the bill.
    I'm using the latest version of mail.app 2 with updates applied running in 10.4.3.
    I'm using Gmail as my mail server but have the same problem with other email servers I have tried.
    When I send mail to my work account (based on an exchange server) I'm getting some strange results. I'm using Windows 2000 and Outlook 2003 at work.
    When I send an (new) email with an attachment then all text that I write below the attachment in the email, when received through exchange at work, becomes an attachment its self. If this is a plain text email then the attachment is a text file, if it's a rich text email then the attachment becomes a webdocument (HTM). This is not the desired result!
    Similarly, if I reply to or forward an email, any text below new text I type into those emails becomes an attachment rather than an actual reply (with that attachment either a text file or a webdocument as stated above).
    My question therefore is how can this be corrected. It's rather annoying to have half my message cut off if I put an attachment half way through the email I am composing (I guess i could attach it to the end below all text and signature). Equally frustrating is having replied or forwarded text appear in an attachment.
    Thanks in anticipation.
    Adam
    Powerbook 12"   Mac OS X (10.4.3)  

    Hi all,
    Picture of what I describe above, thought it might help clarify what the issue is:
    Many thanks
    Adam
    Powerbook 12"   Mac OS X (10.4.3)  
    Message was edited by: adamsquire

  • STRANGER RESULT

    Hi, the code below maps some objects to a key and then buts that key in to a linked list. When I compile and run this program I get a strange result can you help me please(note that more code is involved)
    public class Subsets {
         //Vector v = new Vector();
         Properties ht = new Properties();
         LinkedList ll = new LinkedList();
         ArrayList al1, al2, al3, al4, al5, al6, al7, al8;
         String           key = null;
         String           key2;
         int          intKey;
         //Card          cd[];
    ArrayList newArr = null;
         //Card vectArray[];
         //Card cd1[], cd2[], cd3[], cd4[], cd5[], cd6[], cd7[], cd8[];
    public ArrayList permutations(Hand dk, Hand comp){
         for (int f=0; f < dk.getCardCount(); f++){
              key = String.valueOf(dk.getCard(f).getValue());
              al1 = new ArrayList();
              al1.add(dk.getCard(f));
              ll.add(ht.put(key,al1));
              for (int s=f+1; s < dk.getCardCount(); s++){
                   key = String.valueOf(dk.getCard(f).getValue()+dk.getCard(s).getValue());
                   al2 = new ArrayList();
                   al2.add(dk.getCard(f));
                   al2.add(dk.getCard(s));
                   ll.add(ht.put(key, al2));
                   //v.addElement(ht.put(key,cd2));
                   for (int t=s+1; t < dk.getCardCount(); t++){
                        key = String.valueOf(dk.getCard(f).getValue()+dk.getCard(s).getValue()+dk.getCard(t).getValue());
                        al3 = new ArrayList();
                        al3.add(dk.getCard(f));
                        al3.add(dk.getCard(s));
                        al3.add(dk.getCard(t));
                        ll.add(ht.put(key,al3));
                        //v.addElement(ht.put(key,cd3));
                        for (int a=t+1; a < dk.getCardCount(); a++){
                             key = String.valueOf(dk.getCard(f).getValue()+dk.getCard(s).getValue()+dk.getCard(t).getValue()+dk.getCard(a).getValue());
                             al4 = new ArrayList();
                             al4.add(dk.getCard(f));
                             al4.add(dk.getCard(s));
                             al4.add(dk.getCard(t));
                             al4.add(dk.getCard(a));
                             ll.add(ht.put(key,al4));
                             //v.addElement(ht.put(key,cd4));
                             for (int b=a+1; b < dk.getCardCount(); b++){
                                  key = String.valueOf(dk.getCard(f).getValue()+dk.getCard(s).getValue()+dk.getCard(t).getValue()+dk.getCard(a).getValue()+dk.getCard(b).getValue());
                                  al5 = new ArrayList();
                                  al5.add(dk.getCard(f));
                                  al5.add(dk.getCard(s));
                                  al5.add(dk.getCard(t));
                                  al5.add(dk.getCard(a));
                                  al5.add(dk.getCard(b));
                                  ll.add(ht.put(key,al5));
                                  //v.addElement(ht.put(key,cd5));
                                  for (int c=b+1; c < dk.getCardCount(); c++){
                                       key = String.valueOf(dk.getCard(f).getValue()+dk.getCard(s).getValue()+dk.getCard(t).getValue()+dk.getCard(a).getValue()+dk.getCard(b).getValue()+dk.getCard(c).getValue());
                                       al6 = new ArrayList();
                                       al6.add(dk.getCard(f));
                                       al6.add(dk.getCard(s));
                                       al6.add(dk.getCard(t));
                                       al6.add(dk.getCard(a));
                                       al6.add(dk.getCard(b));
                                       al6.add(dk.getCard(c));
                                       ll.add(ht.put(key,al6));
                                       //v.addElement(ht.put(key,cd6));
                                       for (int d=c+1; d < dk.getCardCount(); d++){
                                            key = String.valueOf(dk.getCard(f).getValue()+dk.getCard(s).getValue()+dk.getCard(t).getValue()+dk.getCard(a).getValue()+dk.getCard(b).getValue()+dk.getCard(c).getValue()+dk.getCard(d).getValue());
                                            al7 = new ArrayList();
                                            al7.add(dk.getCard(f));
                                            al7.add(dk.getCard(s));
                                            al7.add(dk.getCard(t));
                                            al7.add(dk.getCard(a));
                                            al7.add(dk.getCard(b));
                                            al7.add(dk.getCard(c));
                                            al7.add(dk.getCard(d));
                                            ll.add(ht.put(key,al7));
                                            //v.addElement(ht.put(key,cd7));
                                            for (int e=d+1; e < dk.getCardCount(); e++){
                                                 key = String.valueOf(dk.getCard(f).getValue()+dk.getCard(s).getValue()+dk.getCard(t).getValue()+dk.getCard(a).getValue()+dk.getCard(b).getValue()+dk.getCard(c).getValue()+dk.getCard(d).getValue()+dk.getCard(e).getValue());
                                                 al8 = new ArrayList();
                                                 al8.add(dk.getCard(f));
                                                 al8.add(dk.getCard(s));
                                                 al8.add(dk.getCard(t));
                                                 al8.add(dk.getCard(a));
                                                 al8.add(dk.getCard(b));
                                                 al8.add(dk.getCard(c));
                                                 al8.add(dk.getCard(d));
                                                 al8.add(dk.getCard(e));
                                                 ll.add(ht.put(key,al8));
                                                 //v.addElement(ht.put(key,cd8));
         Iterator itr = ll.iterator();
         first:{
              while(itr.hasNext()){     
    // key2 = String.valueOf(itr.next());
    //System.out.println("key2 : "+key2);
    System.out.println("size "+ll.size());
    System.out.println("next "+itr.next());
    // intKey = Integer.parseInt(key2);
                   //for(int j=comp.getCardCount()-1; j>=0;j++){
                   //     if(intKey == comp.getCard(j).getValue()){
                   //          newArr = (ArrayList)ht.get(key2);
                   //          break first;
              if(!itr.hasNext()){
                   newArr = null;
    newArr = (ArrayList)ht.get(key2);
         return newArr;
    the result that I get is as follows
    Cards on the table are:
    0. 6 of Hearts
    1. 7 of Hearts
    2. 4 of Spades
    3. Jack of Spades
    4. 7 of Spades
    Its r's turn
    size 31
    next null
    size 31
    next null
    size 31
    next null
    size 31
    next null
    size 31
    next null
    size 31
    next null
    size 31
    next null
    size 31
    next null
    size 31
    next null
    size 31
    next null
    size 31
    next null
    size 31
    next [6 of Hearts, 7 of Hearts, 4 of Spades, Jack of Spades]
    size 31
    next [6 of Hearts, 7 of Hearts, 4 of Spades]
    size 31
    next null
    size 31
    next [6 of Hearts, 7 of Hearts, Jack of Spades]
    size 31
    next [6 of Hearts, 7 of Hearts]
    size 31
    next null
    size 31
    next null
    size 31
    next null
    size 31
    next null
    size 31
    next [6 of Hearts, 4 of Spades, Jack of Spades]
    size 31
    next null
    size 31
    next null
    size 31
    next [6 of Hearts, Jack of Spades]
    size 31
    next null
    size 31
    next null
    size 31
    next [7 of Hearts, 4 of Spades, Jack of Spades]
    size 31
    next [7 of Hearts, 4 of Spades]
    size 31
    next null
    size 31
    next [7 of Hearts, Jack of Spades]
    size 31
    next [7 of Hearts]
    Exception in thread "main" java.lang.NullPointerException
    at java.util.Hashtable.get(Hashtable.java:320)
    at Subsets.permutations(Subsets.java:124)
    at PlayScopa.computerTurn(PlayScopa.java:273)
    at PlayScopa.scopaPlay(PlayScopa.java:133)
    at PlayScopa.scopaStart(PlayScopa.java:89)
    at MainApp.main(MainApp.java:29)
    [u9zuh /home/stud3/csc99/u9zuh]$
    why are there gaps here
    not the for loops are as follows
    for(){
    ......for(){
    .............for(){
    .....................etc.....

    It's telling you exactly where the problem is:
    Exception in thread "main" java.lang.NullPointerException
    at java.util.Hashtable.get(Hashtable.java:320)
    at Subsets.permutations(Subsets.java:124)
    at PlayScopa.computerTurn(PlayScopa.java:273)
    at PlayScopa.scopaPlay(PlayScopa.java:133)
    at PlayScopa.scopaStart(PlayScopa.java:89)
    at MainApp.main(MainApp.java:29)
    What code is at line 124 of Subsets?
    When you figure out what line that is (use your IDE - Control-G often lets you type in a line number) look at the variables used on that line and see which one(s) hasn't been assigned a value.

  • Printing in Word for Mac: strange result

    Today I tried a simple thing like printing a word page from app Word for mac. Usually I obtain a normal print. But today the result is quite strange: the page is printed in an over stretched form, characters seem stretched in vertical, but with some line missing. I tried to reinstall the Office suite, but same result obtained. I only got to have the page printed by exporting it into iPhoto and printing from there...
    Printer HP deskjet 920 C
    all settings ok, since printing a sample page from printer driver works fine.
    Thanks in advance for helping.
    Carlo

    First I would try trashing the MS Word preferences file. That is located at Home>Library>Preferences>com.microsoft.word.plist. Then try again.
    Trevor

  • Strange result using Oracle Text

    Hello, I am receiving a strange exception with this sql query
    SELECT * FROM gob_attachment
    WHERE CONTAINS (gob_a_document, 'java') > 0
    It's giving me
    ORA-29902: error in executing ODCIIndexStart() routine
    ORA-20000: Oracle Text error:
    ORA-00942: table or view does not exist
    29902. 00000 - "error in executing ODCIIndexStart() routine"
    *Cause:    The execution of ODCIIndexStart routine caused an error.
    *Action:   Examine the error messages produced by the indextype code and
    take appropriate action.
    After some googling I've disovered that problem could be in index, but I looked at the table and index seems ok to me.
    Create script for index is looking like this
    CREATE INDEX FTSI_GOB_A_DOCUMENT ON GOB_ATTACHMENT (GOB_A_DOCUMENT) INDEXTYPE IS CTXSYS.CONTEXT;
    Only thing which is strange to me is that when I look to Edit Table in Table properties in SQL Developer I can see that Operational Status of index is FAILED. Does anyone know what does it mean?Maybe DB rights?
    Edited by: 918345 on 2.3.2012 1:40
    Edited by: 918345 on 2.3.2012 1:44

    No, I don't see any message related to this matter in there. I also tried to recreate the index and now the query is working, but it's not returning any results.
    So I did this
    drop index blob_index
    create index blob_index on docs_mixedmedia(doc_contents) indextype is ctxsys.context
    I've also discovered that we are storing unsupported datatype(DOCX), because it's supported from version 11 and we are running on 10g, could this lead to empty result of queries?

  • XMLTable and strange results

    I seem to be getting strange or at least unexpected results from the result of a PL SQL Query that uses XMLTable() in Oracle 11g1.
    I have a table in Oracle that looks like this -
    CREATE TABLE EPBNI_XML_TEST
    (<blockquote>RRN VARCHAR(24) PRIMARY KEY,
    ClipID VARCHAR2(27),
    Lodgement XMLType</blockquote>)
    XMLTYPE COLUMN Lodgement
    STORE AS OBJECT RELATIONAL
    ELEMENT "ConditionReportCreateRequest_1.xsd#ConditionReportCreateRequest_1";
    Each XML Document stored in the XMLTYPE Column Lodgement is a little bit like this (simplified) -
    &lt;ConditionReportCreateRequest_1&gt;
    <blockquote>
    &lt;Content&gt;<blockquote>&lt;X-Report&gt;<blockquote>&lt;Report-Header&gt;<blockquote>&lt;RRN&gt;123&lt;/RRN&gt;
    &lt;Report-Type&gt;type A&lt;/Report-Type&gt;
    &lt;Status&gt;status A&lt;/Status&gt;</blockquote>&lt;/Report-Header&gt;</blockquote>&lt;/X-Report&gt;</blockquote></blockquote><blockquote><blockquote>&lt;Y-Report&gt;</blockquote></blockquote><blockquote><blockquote><blockquote>&lt;Report-Header&gt;</blockquote></blockquote></blockquote><blockquote><blockquote><blockquote><blockquote>&lt;RRN&gt;321&lt;/RRN&gt;
    &lt;Report-Type&gt;type B&lt;/Report-Type&gt;
    &lt;Status&gt;status B&lt;/Status&gt;</blockquote>&lt;/Report-Header&gt;</blockquote>&lt;/Y-Report&gt;</blockquote>&lt;/Content&gt;</blockquote>&lt;/ConditionReportCreateRequest_1&gt;
    Each Lodgement can have one or more reports in the XML document. What I am trying to acheive is getting a single list of the RRN, Report-Type and Status of every report, e.g.
    RRN Report-Type Status
    123 type A status A
    321 type B status B
    112 type A status A
    113 type C status A
    etc... etc....
    My PL SQL and XQuery looks a bit like this -
    SELECT xtab.RRN, xtab.ReportType, xtab.ReportStatus from
    EPBNI_XML_TEST,
    XMLTable('<blockquote>for $reportHeader in /ConditionReportCreateRequest_1/Content/child::element()/Report-Header return
    &lt;report&gt;
              $reportHeader/RRN,
    $reportHeader/Report-Type,
    $reportHeader/Status
    &lt;/report&gt;</blockquote>'
    PASSING LODGEMENT
    COLUMNS
    RRN VARCHAR2(24) PATH 'RRN',
    ReportType VARCHAR2(1) PATH 'Report-Type',
    ReportStatus VARCHAR2(10) PATH 'Status'
    ) xtab;
    The problem is though that I seem to get only 1 result for each row of the table. I.e. if I have 9,000 rows in the EPBNI_XML_TEST table I only get 9,000 results. However I need one result for each report in each lodgement, probably closer to 18,000 results. Also all 9,000 results are the same - which I dont understand - i.e. all 9,000 are -
    RRN Report-Type Status
    123 type A status A
    123 type A status A
    123 type A status A
    (upto 9000 identical result rows...)
    What am I doing wrong or mis-understanding here?
    Thanks Adam.
    Edited by: adamretter on Oct 29, 2008 2:39 PM

    try this
    SELECT xtab.RRN, xtab.ReportType, xtab.ReportStatus from
    EPBNI_XML_TEST,
    ,xmltable('/ConditionReportCreateRequest_1/Content/*/Report-Header'
    passing LODGEMENT
    columns
    rrn varchar2(24) path 'RRN/text()'
    ,reporttype varchar2(10) path 'Report-Type/text()'
    ,status varchar2(10) path 'Status/text()') xtab;**not tested**

Maybe you are looking for

  • HP LJ8000n unable to obtain IP address

    We have an old LaserJet 8000n that is unable to obtain an IP address. It has been working for the last 10 or so years. In the last two weeks or so, the printer is unable to get an IP address. I did a cold reset and nothing happens. The printer is set

  • Windows 8 MAIL client renames G-Mail PDF attachments filename and extension to PDF????

    Hi PPL, I have the Windows 8 MAIL client configured to get G-Mail based on an imap configuration. When opening gmail.com in Internet Explorer and looking at a specific email I do see 2 attachments for example with name: "Mail Attachement1.PDF" &  "Ma

  • The email feature in adobe reader XI does not work with windows 7

    When I try to attach a PDF directly to an email from within Reader, my gmail login screen flashes briefly and then disappears without allowing me to enter my password (and therefore will not connect to my webmail/gmail)

  • Problem with ComboBoxRenderer

    Hi all. I try to paint my combo box in different color when there is no selected value. So, I created custom renderer, and tried to setup background & foreground like this: ----------%<-----------      public Component getListCellRendererComponent(  

  • Cannot Purchase PS Touch for Note 4

    Im having difficulty with purchasing Photoshop touch for my Note 4. I use my Google Play Balance to pay off the whole thing and enter my password. But then it gives me the error that it cant retrieve information from the serve (Both wifi and 4G) I co