当前位置: 首页>>代码示例>>Java>>正文


Java ArrayUtil.hasAllNull方法代码示例

本文整理汇总了Java中org.hsqldb.lib.ArrayUtil.hasAllNull方法的典型用法代码示例。如果您正苦于以下问题:Java ArrayUtil.hasAllNull方法的具体用法?Java ArrayUtil.hasAllNull怎么用?Java ArrayUtil.hasAllNull使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在org.hsqldb.lib.ArrayUtil的用法示例。


在下文中一共展示了ArrayUtil.hasAllNull方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: checkInsert

import org.hsqldb.lib.ArrayUtil; //导入方法依赖的package包/类
/**
 * Checks for foreign key or check constraint violation when
 * inserting a row into the child table.
 */
void checkInsert(Session session, Table table, Object[] data,
                 boolean isNew) {

    switch (constType) {

        case SchemaObject.ConstraintTypes.CHECK :
            if (!isNotNull) {
                checkCheckConstraint(session, table, data);
            }

            return;

        case SchemaObject.ConstraintTypes.FOREIGN_KEY :
            PersistentStore store = core.mainTable.getRowStore(session);

            if (ArrayUtil.hasNull(data, core.refCols)) {
                if (core.matchType == OpTypes.MATCH_SIMPLE) {
                    return;
                }

                if (core.refCols.length == 1) {
                    return;
                }

                if (ArrayUtil.hasAllNull(data, core.refCols)) {
                    return;
                }

                // core.matchType == OpTypes.MATCH_FULL
            } else if (core.mainIndex.existsParent(session, store, data,
                                                   core.refCols)) {
                return;
            }

            throw getException(data);
    }
}
 
开发者ID:tiweGH,项目名称:OpenDiabetes,代码行数:42,代码来源:Constraint.java

示例2: checkInsert

import org.hsqldb.lib.ArrayUtil; //导入方法依赖的package包/类
/**
 * Checks for foreign key or check constraint violation when
 * inserting a row into the child table.
 */
void checkInsert(Session session, Table table, Object[] row) {

    switch (constType) {

        case CHECK :
            if (!isNotNull) {
                checkCheckConstraint(session, table, row);
            }

            return;

        case FOREIGN_KEY :
            PersistentStore store =
                session.sessionData.getRowStore(core.mainTable);

            if (ArrayUtil.hasNull(row, core.refCols)) {
                if (core.matchType == OpTypes.MATCH_SIMPLE) {
                    return;
                }

                if (core.refCols.length == 1) {
                    return;
                }

                if (ArrayUtil.hasAllNull(row, core.refCols)) {
                    return;
                }

                // core.matchType == OpTypes.MATCH_FULL
            } else if (core.mainIndex.exists(session, store, row,
                                             core.refCols)) {
                return;
            } else if (core.mainTable == core.refTable) {

                // special case: self referencing table and self referencing row
                int compare = core.mainIndex.compareRowNonUnique(row,
                    core.refCols, row);

                if (compare == 0) {
                    return;
                }
            }

            String[] info = new String[] {
                core.refName.name, core.mainTable.getName().name
            };

            throw Error.error(ErrorCode.X_23502, ErrorCode.CONSTRAINT,
                              info);
    }
}
 
开发者ID:s-store,项目名称:sstore-soft,代码行数:56,代码来源:Constraint.java

示例3: checkReferencedRows

import org.hsqldb.lib.ArrayUtil; //导入方法依赖的package包/类
/**
 * Check used before creating a new foreign key cosntraint, this method
 * checks all rows of a table to ensure they all have a corresponding
 * row in the main table.
 */
void checkReferencedRows(Session session, Table table, int[] rowColArray) {

    Index           mainIndex = getMainIndex();
    PersistentStore store     = session.sessionData.getRowStore(table);
    RowIterator     it        = table.rowIterator(session);

    while (true) {
        Row row = it.getNextRow();

        if (row == null) {
            break;
        }

        Object[] rowData = row.getData();

        if (ArrayUtil.hasNull(rowData, rowColArray)) {
            if (core.matchType == OpTypes.MATCH_SIMPLE) {
                continue;
            }
        } else if (mainIndex.exists(session, store, rowData,
                                    rowColArray)) {
            continue;
        }

        if (ArrayUtil.hasAllNull(rowData, rowColArray)) {
            continue;
        }

        String colValues = "";

        for (int i = 0; i < rowColArray.length; i++) {
            Object o = rowData[rowColArray[i]];

            colValues += table.getColumnTypes()[i].convertToString(o);
            colValues += ",";
        }

        String[] info = new String[] {
            getName().name, getMain().getName().name
        };

        throw Error.error(ErrorCode.X_23502, ErrorCode.CONSTRAINT, info);
    }
}
 
开发者ID:s-store,项目名称:sstore-soft,代码行数:50,代码来源:Constraint.java


注:本文中的org.hsqldb.lib.ArrayUtil.hasAllNull方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。