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

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

?? jdbc4databasemetadata.java

?? 用于JAVA數據庫連接.解壓就可用,方便得很
?? JAVA
字號:
/*
 Copyright (C) 2002-2007 MySQL AB

 This program is free software; you can redistribute it and/or modify
 it under the terms of version 2 of the GNU General Public License as 
 published by the Free Software Foundation.

 There are special exceptions to the terms and conditions of the GPL 
 as it is applied to this software. View the full text of the 
 exception in file EXCEPTIONS-CONNECTOR-J in the directory of this 
 software distribution.

 This program is distributed in the hope that it will be useful,
 but WITHOUT ANY WARRANTY; without even the implied warranty of
 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 GNU General Public License for more details.

 You should have received a copy of the GNU General Public License
 along with this program; if not, write to the Free Software
 Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA

 */

package com.mysql.jdbc;

import java.sql.ResultSet;
import java.sql.RowIdLifetime;
import java.sql.SQLException;
import java.sql.Types;
import java.util.ArrayList;

import java.util.List;

import com.mysql.jdbc.Field;

public class JDBC4DatabaseMetaData extends DatabaseMetaData {
	public JDBC4DatabaseMetaData(ConnectionImpl connToSet, String databaseToSet) {
		super(connToSet, databaseToSet);
	}

	public RowIdLifetime getRowIdLifetime() throws SQLException {
		return RowIdLifetime.ROWID_UNSUPPORTED;
	}

	/**
     * Returns true if this either implements the interface argument or is directly or indirectly a wrapper
     * for an object that does. Returns false otherwise. If this implements the interface then return true,
     * else if this is a wrapper then return the result of recursively calling <code>isWrapperFor</code> on the wrapped
     * object. If this does not implement the interface and is not a wrapper, return false.
     * This method should be implemented as a low-cost operation compared to <code>unwrap</code> so that
     * callers can use this method to avoid expensive <code>unwrap</code> calls that may fail. If this method
     * returns true then calling <code>unwrap</code> with the same argument should succeed.
     *
     * @param interfaces a Class defining an interface.
     * @return true if this implements the interface or directly or indirectly wraps an object that does.
     * @throws java.sql.SQLException  if an error occurs while determining whether this is a wrapper
     * for an object with the given interface.
     * @since 1.6
     */
	public boolean isWrapperFor(Class<?> iface) throws SQLException {
		// This works for classes that aren't actually wrapping
		// anything
		return iface.isInstance(this);
	}

    /**
     * Returns an object that implements the given interface to allow access to non-standard methods,
     * or standard methods not exposed by the proxy.
     * The result may be either the object found to implement the interface or a proxy for that object.
     * If the receiver implements the interface then that is the object. If the receiver is a wrapper
     * and the wrapped object implements the interface then that is the object. Otherwise the object is
     *  the result of calling <code>unwrap</code> recursively on the wrapped object. If the receiver is not a
     * wrapper and does not implement the interface, then an <code>SQLException</code> is thrown.
     *
     * @param iface A Class defining an interface that the result must implement.
     * @return an object that implements the interface. May be a proxy for the actual implementing object.
     * @throws java.sql.SQLException If no object found that implements the interface 
     * @since 1.6
     */
    public <T> T unwrap(java.lang.Class<T> iface) throws java.sql.SQLException {
    	try {
    		// This works for classes that aren't actually wrapping
    		// anything
            return iface.cast(this);
        } catch (ClassCastException cce) {
            throw SQLError.createSQLException("Unable to unwrap to " + iface.toString(), 
            		SQLError.SQL_STATE_ILLEGAL_ARGUMENT);
        }
    }

    /**
	 * Retrieves a list of the client info properties 
	 * that the driver supports.  The result set contains the following columns
	 * <p>
         * <ol>
	 * <li><b>NAME</b> String=> The name of the client info property<br>
	 * <li><b>MAX_LEN</b> int=> The maximum length of the value for the property<br>
	 * <li><b>DEFAULT_VALUE</b> String=> The default value of the property<br>
	 * <li><b>DESCRIPTION</b> String=> A description of the property.  This will typically 
	 * 						contain information as to where this property is 
	 * 						stored in the database.
	 * </ol>
         * <p>
	 * The <code>ResultSet</code> is sorted by the NAME column
	 * <p>
	 * @return	A <code>ResultSet</code> object; each row is a supported client info
         * property
	 * <p>
	 *  @exception SQLException if a database access error occurs
	 * <p>
	 * @since 1.6
	 */
	public ResultSet getClientInfoProperties()
		throws SQLException {
		// We don't have any built-ins, we actually support whatever
		// the client wants to provide, however we don't have a way
		// to express this with the interface given
		Field[] fields = new Field[4];
		fields[0] = new Field("", "NAME", Types.VARCHAR, 255);
		fields[1] = new Field("", "MAX_LEN", Types.INTEGER, 10);
		fields[2] = new Field("", "DEFAULT_VALUE", Types.VARCHAR, 255);
		fields[3] = new Field("", "DESCRIPTION", Types.VARCHAR, 255);
		
		ArrayList tuples = new ArrayList();
		
		return buildResultSet(fields, tuples, this.conn);
	}
	
    public boolean autoCommitFailureClosesAllResultSets() throws SQLException {
    	return false;
    }
    
    /**
     * Retrieves a description of the  system and user functions available 
     * in the given catalog.
     * <P>
     * Only system and user function descriptions matching the schema and
     * function name criteria are returned.  They are ordered by
     * <code>FUNCTION_CAT</code>, <code>FUNCTION_SCHEM</code>,
     * <code>FUNCTION_NAME</code> and 
     * <code>SPECIFIC_ NAME</code>.
     *
     * <P>Each function description has the the following columns:
     *  <OL>
     *	<LI><B>FUNCTION_CAT</B> String => function catalog (may be <code>null</code>)
     *	<LI><B>FUNCTION_SCHEM</B> String => function schema (may be <code>null</code>)
     *	<LI><B>FUNCTION_NAME</B> String => function name.  This is the name 
     * used to invoke the function
     *	<LI><B>REMARKS</B> String => explanatory comment on the function
     * <LI><B>FUNCTION_TYPE</B> short => kind of function:
     *      <UL>
     *      <LI>functionResultUnknown - Cannot determine if a return value
     *       or table will be returned
     *      <LI> functionNoTable- Does not return a table
     *      <LI> functionReturnsTable - Returns a table
     *      </UL>
     *	<LI><B>SPECIFIC_NAME</B> String  => the name which uniquely identifies 
     *  this function within its schema.  This is a user specified, or DBMS
     * generated, name that may be different then the <code>FUNCTION_NAME</code> 
     * for example with overload functions
     *  </OL>
     * <p>
     * A user may not have permission to execute any of the functions that are
     * returned by <code>getFunctions</code>
     *
     * @param catalog a catalog name; must match the catalog name as it
     *        is stored in the database; "" retrieves those without a catalog;
     *        <code>null</code> means that the catalog name should not be used to narrow
     *        the search
     * @param schemaPattern a schema name pattern; must match the schema name
     *        as it is stored in the database; "" retrieves those without a schema;
     *        <code>null</code> means that the schema name should not be used to narrow
     *        the search
     * @param functionNamePattern a function name pattern; must match the
     *        function name as it is stored in the database 
     * @return <code>ResultSet</code> - each row is a function description 
     * @exception SQLException if a database access error occurs
     * @see #getSearchStringEscape 
     * @since 1.6
     */
    public java.sql.ResultSet getFunctions(String catalog, String schemaPattern,
			    String functionNamePattern) throws SQLException {
    	Field[] fields = new Field[6];
    	
    	fields[0] = new Field("", "FUNCTION_CAT", Types.CHAR, 255);
		fields[1] = new Field("", "FUNCTION_SCHEM", Types.CHAR, 255);
		fields[2] = new Field("", "FUNCTION_NAME", Types.CHAR, 255);
		fields[3] = new Field("", "REMARKS", Types.CHAR, 255);
		fields[4] = new Field("", "FUNCTION_TYPE", Types.SMALLINT, 6);
		fields[5] = new Field("", "SPECIFIC_NAME", Types.CHAR, 255);
		
		return getProceduresAndOrFunctions(
				fields,
				catalog,
				schemaPattern,
				functionNamePattern,
				false,
				true);
    }
    
	protected int getJDBC4FunctionNoTableConstant() {
		return functionNoTable;
	}
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
成人性视频免费网站| 欧美三级日本三级少妇99| 91亚洲精品久久久蜜桃网站| 欧美精品国产精品| 亚洲欧美在线观看| 另类小说视频一区二区| 色婷婷国产精品综合在线观看| 26uuu精品一区二区| 亚洲在线视频一区| 99热在这里有精品免费| 欧美精品一区男女天堂| 日韩国产在线观看一区| 91久久精品网| 亚洲精品日韩一| 99久久国产综合精品麻豆| 国产偷国产偷精品高清尤物| 美女国产一区二区三区| 欧美日韩免费电影| 一区二区三区在线免费观看| 国产成人免费高清| 国产日产精品1区| 国产精品影视在线| 久久毛片高清国产| 国产中文一区二区三区| 欧美大白屁股肥臀xxxxxx| 日韩不卡一二三区| 3atv在线一区二区三区| 性做久久久久久久免费看| 色综合久久久网| 一区二区三区四区不卡视频| 91日韩在线专区| 亚洲欧美激情小说另类| 99久久99久久综合| 一色屋精品亚洲香蕉网站| 丁香亚洲综合激情啪啪综合| 国产人妖乱国产精品人妖| 国产高清精品在线| 国产精品久久久久天堂| www.亚洲免费av| 亚洲精品欧美综合四区| 欧美日韩久久一区| 日本不卡一区二区三区| 日韩欧美中文字幕精品| 国产精品影视天天线| 国产精品久久久久久久久晋中| 不卡一区在线观看| 亚洲美女电影在线| 欧美日韩精品一区视频| 蜜桃av噜噜一区| 国产亚洲欧美一级| 99免费精品视频| 亚洲一区二区三区国产| 欧美一级理论片| 国产伦精一区二区三区| 国产精品久久久一本精品| 色94色欧美sute亚洲线路一久| 一区二区国产盗摄色噜噜| 3atv一区二区三区| 国产真实乱偷精品视频免| 日韩美女啊v在线免费观看| 欧美在线免费播放| 狠狠色丁香九九婷婷综合五月| 国产精品传媒入口麻豆| 欧美日韩1区2区| 国产大陆a不卡| 香蕉成人伊视频在线观看| 欧美成人伊人久久综合网| 91在线观看地址| 久久99精品国产.久久久久| 综合激情网...| 日韩精品一区二区三区蜜臀| 色综合久久久久| 麻豆精品视频在线观看视频| 一色桃子久久精品亚洲| 91精品国产综合久久国产大片 | 久久五月婷婷丁香社区| 99re热这里只有精品免费视频| 日本在线不卡视频一二三区| 日韩一区在线播放| 欧美成人伊人久久综合网| 色综合天天综合在线视频| 激情五月播播久久久精品| 一区二区免费在线| 国产欧美va欧美不卡在线| 91精品婷婷国产综合久久性色| 99视频一区二区| 国产99久久久精品| 久久精工是国产品牌吗| 亚洲成人动漫一区| 亚洲精品你懂的| 日本一区二区动态图| 精品国产髙清在线看国产毛片| 91久久国产综合久久| 懂色av噜噜一区二区三区av| 久久精品国产99久久6| 国产精品福利一区| 国产欧美一区二区在线| 日韩三级免费观看| 日韩色在线观看| 欧美在线一二三| 91视频一区二区三区| 国产精品一区二区视频| 免费久久99精品国产| 亚洲午夜激情网页| 一级特黄大欧美久久久| 国产精品久久久久久亚洲伦| 亚洲国产精品ⅴa在线观看| 久久亚洲精精品中文字幕早川悠里 | 337p亚洲精品色噜噜噜| 欧美网站一区二区| 欧美综合一区二区三区| 97se狠狠狠综合亚洲狠狠| 成人黄色国产精品网站大全在线免费观看| 精品一区二区三区在线播放| 蜜臀久久99精品久久久久宅男| 日韩av在线播放中文字幕| 午夜精品久久久久久久久| 日韩成人免费看| 奇米精品一区二区三区在线观看一 | 884aa四虎影成人精品一区| 欧美久久免费观看| 91精品国产综合久久久久久久| 欧美久久久久久久久中文字幕| 欧美丰满嫩嫩电影| 日韩欧美国产一区二区在线播放| 日韩欧美一级二级| 欧美精品一区二区在线播放| 国产午夜精品美女毛片视频| 国产精品卡一卡二卡三| 一区二区高清在线| 日本中文字幕不卡| 国产不卡视频在线播放| 91亚洲精品乱码久久久久久蜜桃 | 午夜a成v人精品| 久久国产三级精品| 成人久久久精品乱码一区二区三区 | 欧美一区二区国产| 久久精品人人做人人综合| 1区2区3区欧美| 婷婷国产v国产偷v亚洲高清| 狠狠色丁香久久婷婷综| 91亚洲精品一区二区乱码| 8x8x8国产精品| 国产欧美精品在线观看| 亚洲网友自拍偷拍| 国内精品不卡在线| 欧美影片第一页| 欧美精品一区二区三| 亚洲视频精选在线| 日韩电影在线观看一区| 国产91富婆露脸刺激对白| 欧美午夜精品久久久久久超碰 | 日韩精品在线网站| 中文字幕永久在线不卡| 婷婷综合在线观看| av一本久道久久综合久久鬼色| 欧美日韩精品一区二区天天拍小说 | 老司机一区二区| 91丝袜美女网| 精品乱人伦小说| 日韩和欧美的一区| 丁香另类激情小说| 777午夜精品免费视频| 亚洲欧美自拍偷拍色图| 国模少妇一区二区三区| 欧美日韩国产片| 日韩毛片高清在线播放| 精品影视av免费| 在线视频一区二区免费| 国产精品欧美极品| 久久成人免费日本黄色| 欧美色窝79yyyycom| 国产精品国产三级国产aⅴ中文 | 国产精品理论片| 狠狠色狠狠色综合| 欧美美女喷水视频| 亚洲色图一区二区三区| 国产xxx精品视频大全| 日韩视频在线你懂得| 亚洲第一激情av| 91啪九色porn原创视频在线观看| 精品国产伦理网| 日本vs亚洲vs韩国一区三区 | 在线精品视频免费观看| 国产精品久久久久久久久搜平片 | 国产精品久久三区| 国产精品亚洲а∨天堂免在线| 欧美一级高清片在线观看| 午夜欧美视频在线观看| 欧美亚洲日本一区| 伊人色综合久久天天| 91麻豆免费看片| 亚洲婷婷在线视频| 91影院在线免费观看| 亚洲人成影院在线观看| 色综合久久久久久久久| 亚洲精品一二三| 欧美亚男人的天堂| 午夜激情一区二区| 欧美一区二区精品在线|