Package com.redspr.redquerybuilder.core.shared.meta

Examples of com.redspr.redquerybuilder.core.shared.meta.Table


        Type dateType = new Type("DATE");
        dateType.setEditor(new Editor.DateEditor());
        Type[] types = new Type[]{stringType, dateType, refType, singleRefType};
        database.setTypes(types);

        Table person = new Table("PERSON"); // XXX want case sensitivity?
        Column personId = new Column("id", stringType);
        person.add(personId);
        person.add(new Column("sex", singleRefType));
        person.add(new Column("owner", stringType));
        person.add(new Column("category", refType));
        person.add(new Column("category2", refType));
        person.add(new Column("county", suggestType));
        schema.add(person);

        {
            Table log = new Table("Log");
            log.add(new Column("id", stringType));
            log.add(new Column("date", dateType));
            Column pc = new Column("parent", stringType);
            ConstraintReferential fk = new ConstraintReferential("parentfk",
                    log);
            fk.setRefTable(person);
            fk.setColumns(new Column[] {pc });
            fk.setRefColumns(new Column[] {personId });
            log.add(fk);
            log.add(pc);

            schema.add(log);
        }

        {
            Table order = new Table("Order");
            order.add(new Column("date", dateType));
            Column pc = new Column("parent", stringType);
            ConstraintReferential fk = new ConstraintReferential("orderparentfk",
                    order);
            fk.setRefTable(person);
            fk.setColumns(new Column[] {pc });
            fk.setRefColumns(new Column[] {personId });
            order.add(fk);
            order.add(pc);

            schema.add(order);
        }

        if (config == null) {
View Full Code Here


    public void testSelectAndThenReverseJoin() throws Exception {
        Session s = getSession();
        s.getDatabase().getMainSchema().addReverseConstraints();
        CommandBuilder cb = new CommandBuilder(s);

        Table log = s.getDatabase().getMainSchema().findTableOrView("Log");
        ConstraintReferential logToPerson = (ConstraintReferential) log
                .getConstraintByName("parentfk");

        Table person = s.getDatabase().getMainSchema().findTableOrView("PERSON");
        ConstraintReferential personToLog = (ConstraintReferential) person
                .getConstraintByName("Rev parentfk");

        cb.getSelect().updateTable(log);
        cb.fireDirty();
View Full Code Here

    @Test
    public void testAddThirdDuplicateJoin() throws Exception {
        Session s = getSession();
        CommandBuilder cb = new CommandBuilder(s);

        Table person = s.getDatabase().getMainSchema().findTableOrView("PERSON");

        s.getDatabase().getMainSchema().addReverseConstraints();
        cb.getSelect().updateTable(person);

        JoinHelper.getOrCreateFor(s, (ConstraintReferential) person.getConstraints().get(0));
        TableFilter b = JoinHelper.getOrCreateFor(s, (ConstraintReferential) person.getConstraints().get(1));
        assertTrue(b.getJoin() == null);
        TableFilter c = JoinHelper.getOrCreateFor(s, (ConstraintReferential) person.getConstraints().get(1));
        assertTrue(b == c);
    }
View Full Code Here

                expr.add(new ExpressionColumn(s, null, alias, "id"));
                cb.getSelect().setExpressions(expr);
            }
        });

        Table person = s.getDatabase().getMainSchema().findTableOrView("PERSON");

        cb.getSelect().updateTable(person);

        assertEquals(
                "SELECT x0.id\nFROM PERSON x0",
View Full Code Here

    private Prepared parseInsert() throws SQLException {
       return null;
    }

    private TableFilter readTableFilter(boolean fromOuter) throws SQLException {
        Table table;
        String alias = null;
//        if (readIf("(")) {
//            if (isToken("SELECT") || isToken("FROM")) {
//                int start = lastParseIndex;
//                int paramIndex = parameters.size();
View Full Code Here

        } else {
            parseSelectSimpleSelectPart(command);
            if (!readIf("FROM")) {
                // select without FROM: convert to SELECT ... FROM
                // SYSTEM_RANGE(1,1)
                Table dual = getDualTable();
                TableFilter filter = new TableFilter(session, dual, null, currentSelect);
                command.addTableFilter(filter, true);
            } else {
              //  Window.alert("parseSelectSimple D");
                parseSelectSimpleFromPart(command);
View Full Code Here

    private Table readTableOrView(String tableName) throws SQLException {
//        // same algorithm than readSequence
//        if (schemaName != null) {
//            return getSchema().getTableOrView(session, tableName);
//        }
        Table table = database.getMainSchema(
                //session.getCurrentSchemaName()
                ).findTableOrView(tableName);
        if (table != null) {
            return table;
        }
View Full Code Here

//        }
        throw Message.getSQLException(ErrorCode.SEQUENCE_NOT_FOUND_1, "sequenceName");
    }

    private Prepared parseAlterTable() throws SQLException {
        Table table = readTableOrView();
        if (readIf("ADD")) {
            Prepared command = parseAlterTableAddConstraintIf(table.getName(), table.getSchema());
            if (command != null) {
                return command;
            }
            return parseAlterTableAddColumn(table);
        } else if (readIf("SET")) {
View Full Code Here

        database.setTypes(types);

        for (int i = 0; i < meta.getTables().length(); i++) {
            JsTable jst = meta.getTables().get(i);
            Table t = new Table(jst.getName());
            t.setLabel(jst.getLabel());
            for (int j = 0; j < jst.getColumns().length(); j++) {
                JsColumn jsColumn = jst.getColumns().get(j);
                Column c = new Column(jsColumn.getName(), database.getTypeByName(jsColumn
                        .getType()));
                c.setLabel(jsColumn.getLabel());
                if (jsColumn.getEditor() != null) {
                    c.setEditor(Editor.valueOf(jsColumn.getEditor()));
                }
                c.setStyleName(jsColumn.getStyleName());
                t.add(c);
            }
            database.getMainSchema().add(t);
        }

        for (int i = 0; i < meta.getTables().length(); i++) {
            JsTable jst = meta.getTables().get(i);

            Table pkTable = database.getMainSchema().findTableOrView(
                    jst.getName());
            JsArray<JsFk> fks = jst.getFks();
            for (int j = 0; j < fks.length(); j++) {
                JsFk jsfk = fks.get(j);
                Table fkTable = database.getMainSchema().findTableOrView(
                        jsfk.getReferencedTableName());

                ConstraintReferential fk = new ConstraintReferential(
                        jsfk.getName(), pkTable);
                fk.setLabel(jsfk.getLabel());

                fk.setRefTable(fkTable);
                fk.setColumns(createColumns(pkTable, jsfk.getForeignKeyNames()));
                fk.setRefColumns(createColumns(fkTable, jsfk.getReferencedKeyNames()));
                pkTable.add(fk);

                ConstraintReferential fkr = new ConstraintReferential(
                        jsfk.getName() + ".reverse", fkTable);
                fkr.setLabel(jsfk.getReverseLabel());

                fkr.setRefTable(pkTable);
                fkr.setColumns(createColumns(fkTable, jsfk.getReferencedKeyNames())); // XXX
                                                                       // already
                                                                       // done
                                                                       // this
                fkr.setRefColumns(createColumns(pkTable, jsfk.getForeignKeyNames())); // XXX
                                                                          // already
                                                                          // done
                                                                          // this
                fkTable.add(fkr);
            }
        }
    }
View Full Code Here

TOP

Related Classes of com.redspr.redquerybuilder.core.shared.meta.Table

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.