亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? constraintcheck.java

?? 非常棒的java數據庫
?? JAVA
字號:
/*
 * Copyright 2004-2008 H2 Group. Licensed under the H2 License, Version 1.0
 * (http://h2database.com/html/license.html).
 * Initial Developer: H2 Group
 */
package org.h2.constraint;

import java.sql.SQLException;

import org.h2.constant.ErrorCode;
import org.h2.engine.Session;
import org.h2.expression.Expression;
import org.h2.index.Index;
import org.h2.message.Message;
import org.h2.result.LocalResult;
import org.h2.result.Row;
import org.h2.schema.Schema;
import org.h2.table.Column;
import org.h2.table.Table;
import org.h2.table.TableFilter;
import org.h2.util.StringUtils;

/**
 * A check constraint.
 */
public class ConstraintCheck extends Constraint {

    private TableFilter filter;
    private Expression expr;

    public ConstraintCheck(Schema schema, int id, String name, Table table) {
        super(schema, id, name, table);
    }

    public String getConstraintType() {
        return Constraint.CHECK;
    }

    public void setTableFilter(TableFilter filter) {
        this.filter = filter;
    }

    public void setExpression(Expression expr) {
        this.expr = expr;
    }

    public String getCreateSQLForCopy(Table table, String quotedName) {
        StringBuffer buff = new StringBuffer();
        buff.append("ALTER TABLE ");
        buff.append(table.getSQL());
        buff.append(" ADD CONSTRAINT ");
        buff.append(quotedName);
        if (comment != null) {
            buff.append(" COMMENT ");
            buff.append(StringUtils.quoteStringSQL(comment));
        }
        buff.append(" CHECK");
        buff.append(StringUtils.enclose(expr.getSQL()));
        buff.append(" NOCHECK");
        return buff.toString();
    }

    public String getShortDescription() {
        StringBuffer buff = new StringBuffer();
        buff.append(getName());
        buff.append(": ");
        buff.append(expr.getSQL());
        return buff.toString();
    }

    public String  getCreateSQLWithoutIndexes() {
        return getCreateSQL();
    }

    public String getCreateSQL() {
        return getCreateSQLForCopy(table, getSQL());
    }

    public void removeChildrenAndResources(Session session) throws SQLException {
        table.removeConstraint(this);
        database.removeMeta(session, getId());
        filter = null;
        expr = null;
        table = null;
        invalidate();
    }

    public void checkRow(Session session, Table t, Row oldRow, Row newRow) throws SQLException {
        if (newRow == null) {
            return;
        }
        filter.set(newRow);
        // Both TRUE and NULL are ok
        if (Boolean.FALSE.equals(expr.getValue(session).getBoolean())) {
            throw Message.getSQLException(ErrorCode.CHECK_CONSTRAINT_VIOLATED_1, getShortDescription());
        }
    }

    public boolean usesIndex(Index index) {
        return false;
    }

    public void setIndexOwner(Index index) {
        throw Message.getInternalError();
    }

    public boolean containsColumn(Column col) {
        // TODO check constraints / containsColumn: this is cheating, maybe the
        // column is not referenced
        String s = col.getSQL();
        String sql = getCreateSQL();
        return sql.indexOf(s) >= 0;
    }

    public Expression getExpression() {
        return expr;
    }

    public boolean isBefore() {
        return true;
    }

    public void checkExistingData(Session session) throws SQLException {
        if (session.getDatabase().isStarting()) {
            // don't check at startup
            return;
        }
        StringBuffer buff = new StringBuffer();
        buff.append("SELECT 1 FROM ");
        buff.append(filter.getTable().getSQL());
        buff.append(" WHERE NOT(");
        buff.append(expr.getSQL());
        buff.append(")");
        String sql = buff.toString();
        LocalResult r = session.prepare(sql).query(1);
        if (r.next()) {
            throw Message.getSQLException(ErrorCode.CHECK_CONSTRAINT_VIOLATED_1, getName());
        }
    }

}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲人123区| 亚洲人成人一区二区在线观看| 色综合久久88色综合天天6 | 成人午夜伦理影院| 国产美女视频91| 国产精品99久久久久久似苏梦涵| 久久av中文字幕片| 国产成人久久精品77777最新版本| 国产一区在线看| 不卡一区二区三区四区| 波多野结衣在线一区| jlzzjlzz欧美大全| 97久久超碰精品国产| 欧美三区在线观看| 日韩欧美你懂的| 国产欧美日韩久久| 中文字幕在线不卡视频| 亚洲嫩草精品久久| 偷拍亚洲欧洲综合| 韩日av一区二区| 成人精品小蝌蚪| 欧美视频完全免费看| 欧美变态tickle挠乳网站| 国产午夜精品一区二区三区视频 | 国产成人精品一区二区三区四区| 国产成人一级电影| 色中色一区二区| 在线观看91av| 中文字幕av资源一区| 一区二区三区在线观看欧美| 免费成人小视频| 成人一区二区三区视频| 欧美色区777第一页| 欧美精品一区二区三| 自拍av一区二区三区| 美女网站色91| 91亚洲大成网污www| 欧美一区二区三区播放老司机| 国产网站一区二区| 亚洲国产中文字幕| 成人黄色电影在线| 欧美一区二区三区视频在线观看| 亚洲国产精品国自产拍av| 亚洲国产精品一区二区尤物区| 国产一区二区伦理片| 欧美丝袜丝交足nylons| 中文欧美字幕免费| 日本亚洲欧美天堂免费| 色婷婷精品久久二区二区蜜臀av| 日韩一级二级三级| 亚洲永久免费视频| 成人国产电影网| 日韩美女视频在线| 亚洲电影你懂得| 99re成人在线| 国产欧美中文在线| 精品一区二区三区在线视频| 在线观看精品一区| 亚洲日本韩国一区| 成人午夜电影网站| 国产亚洲精品bt天堂精选| 毛片av一区二区| 欧美丰满嫩嫩电影| 亚洲成av人片一区二区三区| 色婷婷久久综合| 亚洲特黄一级片| www.亚洲人| 国产精品嫩草影院com| 国产精品一卡二卡在线观看| 日韩欧美国产小视频| 免费人成精品欧美精品| 欧美夫妻性生活| 婷婷久久综合九色国产成人 | 麻豆精品新av中文字幕| 欧美日韩黄视频| 香蕉久久夜色精品国产使用方法| 一本久久a久久精品亚洲| 中文字幕一区在线观看视频| 成人听书哪个软件好| 中文字幕av一区二区三区| 成人美女视频在线观看18| 国产精品二三区| 色八戒一区二区三区| 亚洲国产精品精华液网站| 欧美综合视频在线观看| 亚洲va欧美va人人爽| 日韩视频在线你懂得| 九九精品一区二区| 久久精品无码一区二区三区| 国产激情91久久精品导航| 中文字幕免费不卡| 日本福利一区二区| 日韩黄色一级片| 欧美xxxx老人做受| 亚洲一线二线三线视频| 欧美一区在线视频| 国产高清精品在线| 一区二区三区四区高清精品免费观看| 欧美手机在线视频| 国产精品888| 日韩vs国产vs欧美| 日韩精品影音先锋| jizz一区二区| 免费观看一级特黄欧美大片| 国产亚洲精品免费| 欧美色偷偷大香| 国产乱人伦精品一区二区在线观看| 国产精品视频观看| 91麻豆精品国产91久久久使用方法| 国产一区高清在线| 亚洲综合免费观看高清完整版 | 91无套直看片红桃| 婷婷开心久久网| 国产精品久久久久久久久快鸭| 在线精品亚洲一区二区不卡| 久久国产三级精品| 亚洲黄网站在线观看| 26uuu色噜噜精品一区| 色婷婷激情久久| 国产激情一区二区三区桃花岛亚洲| 亚洲老司机在线| 国产婷婷一区二区| 欧美一区二区三区四区久久| 色婷婷综合在线| 国产成人亚洲综合a∨猫咪| 午夜不卡av在线| 亚洲精品乱码久久久久久久久| 精品99久久久久久| 欧美日韩夫妻久久| 91日韩在线专区| 国产成人99久久亚洲综合精品| 婷婷综合久久一区二区三区| 亚洲欧美怡红院| 欧美韩国日本不卡| 久久九九影视网| 欧美mv和日韩mv的网站| 欧美精品一二三四| 久久人人爽爽爽人久久久| 欧美妇女性影城| 欧美日韩黄视频| 日本高清不卡视频| 色视频一区二区| 一本大道久久a久久综合| 成人aaaa免费全部观看| 国产成人亚洲精品青草天美| 久久99国产精品久久99| 婷婷夜色潮精品综合在线| 亚洲午夜激情av| 亚洲国产精品久久不卡毛片| 亚洲欧美偷拍另类a∨色屁股| 欧美激情一区不卡| 国产午夜精品久久| 亚洲国产精品ⅴa在线观看| 国产亚洲欧洲997久久综合| 26uuu色噜噜精品一区| 久久久久久久久久看片| 久久久久久久久久久久久夜| 久久久精品中文字幕麻豆发布| 精品国产91洋老外米糕| 久久一区二区三区国产精品| 久久亚洲私人国产精品va媚药| 精品国精品国产尤物美女| 精品少妇一区二区三区免费观看 | 精品一区二区久久久| 狠狠色狠狠色综合日日91app| 极品瑜伽女神91| 国产盗摄女厕一区二区三区| 国产成a人亚洲精品| 99久久综合99久久综合网站| 色综合一区二区| 91超碰这里只有精品国产| 日韩欧美一区二区久久婷婷| 久久一区二区视频| 综合婷婷亚洲小说| 视频一区二区三区在线| 韩国午夜理伦三级不卡影院| 高清日韩电视剧大全免费| 日本精品一区二区三区高清| 欧美精品乱码久久久久久按摩| 精品福利二区三区| 亚洲女同ⅹxx女同tv| 日av在线不卡| 91在线丨porny丨国产| 欧美肥妇bbw| 国产精品少妇自拍| 五月婷婷久久综合| 成人免费毛片嘿嘿连载视频| 欧美专区在线观看一区| 精品国一区二区三区| 亚洲精品免费视频| 麻豆91在线观看| 91蜜桃网址入口| 精品国产123| 亚洲一二三区在线观看| 国产91综合网| 欧美一级欧美一级在线播放| 国产精品久久久久久久久免费樱桃 | 91国产精品成人| 久久久久久毛片| 美女视频黄a大片欧美|