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

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

?? metadataregressiontest.java

?? 用于JAVA數據庫連接.解壓就可用,方便得很
?? JAVA
?? 第 1 頁 / 共 5 頁
字號:
/* 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 testsuite.regression;import java.sql.Connection;import java.sql.DatabaseMetaData;import java.sql.DriverPropertyInfo;import java.sql.PreparedStatement;import java.sql.ResultSet;import java.sql.ResultSetMetaData;import java.sql.SQLException;import java.sql.Statement;import java.sql.Types;import java.util.HashMap;import java.util.Properties;import testsuite.BaseTestCase;import com.mysql.jdbc.Driver;import com.mysql.jdbc.Field;import com.mysql.jdbc.NonRegisteringDriver;import com.mysql.jdbc.SQLError;/** * Regression tests for DatabaseMetaData *  * @author Mark Matthews * @version $Id: MetaDataRegressionTest.java,v 1.1.2.1 2005/05/13 18:58:38 *          mmatthews Exp $ */public class MetaDataRegressionTest extends BaseTestCase {	/**	 * Creates a new MetaDataRegressionTest.	 * 	 * @param name	 *            the name of the test	 */	public MetaDataRegressionTest(String name) {		super(name);	}	/**	 * Runs all test cases in this test suite	 * 	 * @param args	 */	public static void main(String[] args) {		junit.textui.TestRunner.run(MetaDataRegressionTest.class);	}	/**	 * DOCUMENT ME!	 * 	 * @throws Exception	 *             ...	 */	public void testBug2607() throws Exception {		try {			this.stmt.executeUpdate("DROP TABLE IF EXISTS testBug2607");			this.stmt					.executeUpdate("CREATE TABLE testBug2607 (field1 INT PRIMARY KEY)");			this.rs = this.stmt.executeQuery("SELECT field1 FROM testBug2607");			ResultSetMetaData rsmd = this.rs.getMetaData();			assertTrue(!rsmd.isAutoIncrement(1));		} finally {			this.stmt.executeUpdate("DROP TABLE IF EXISTS testBug2607");		}	}	/**	 * Tests fix for BUG#2852, where RSMD is not returning correct (or matching)	 * types for TINYINT and SMALLINT.	 * 	 * @throws Exception	 *             if the test fails.	 */	public void testBug2852() throws Exception {		try {			this.stmt.executeUpdate("DROP TABLE IF EXISTS testBug2852");			this.stmt					.executeUpdate("CREATE TABLE testBug2852 (field1 TINYINT, field2 SMALLINT)");			this.stmt.executeUpdate("INSERT INTO testBug2852 VALUES (1,1)");			this.rs = this.stmt.executeQuery("SELECT * from testBug2852");			assertTrue(this.rs.next());			ResultSetMetaData rsmd = this.rs.getMetaData();			assertTrue(rsmd.getColumnClassName(1).equals(					this.rs.getObject(1).getClass().getName()));			assertTrue("java.lang.Integer".equals(rsmd.getColumnClassName(1)));			assertTrue(rsmd.getColumnClassName(2).equals(					this.rs.getObject(2).getClass().getName()));			assertTrue("java.lang.Integer".equals(rsmd.getColumnClassName(2)));		} finally {			this.stmt.executeUpdate("DROP TABLE IF EXISTS testBug2852");		}	}	/**	 * Tests fix for BUG#2855, where RSMD is not returning correct (or matching)	 * types for FLOAT.	 * 	 * @throws Exception	 *             if the test fails.	 */	public void testBug2855() throws Exception {		try {			this.stmt.executeUpdate("DROP TABLE IF EXISTS testBug2855");			this.stmt.executeUpdate("CREATE TABLE testBug2855 (field1 FLOAT)");			this.stmt.executeUpdate("INSERT INTO testBug2855 VALUES (1)");			this.rs = this.stmt.executeQuery("SELECT * from testBug2855");			assertTrue(this.rs.next());			ResultSetMetaData rsmd = this.rs.getMetaData();			assertTrue(rsmd.getColumnClassName(1).equals(					this.rs.getObject(1).getClass().getName()));			assertTrue("java.lang.Float".equals(rsmd.getColumnClassName(1)));		} finally {			this.stmt.executeUpdate("DROP TABLE IF EXISTS testBug2855");		}	}	/**	 * Tests fix for BUG#3570 -- inconsistent reporting of column type	 * 	 * @throws Exception	 *             if an error occurs	 */	public void testBug3570() throws Exception {		String createTableQuery = " CREATE TABLE testBug3570(field_tinyint TINYINT"				+ ",field_smallint SMALLINT"				+ ",field_mediumint MEDIUMINT"				+ ",field_int INT"				+ ",field_integer INTEGER"				+ ",field_bigint BIGINT"				+ ",field_real REAL"				+ ",field_float FLOAT"				+ ",field_decimal DECIMAL"				+ ",field_numeric NUMERIC"				+ ",field_double DOUBLE"				+ ",field_char CHAR(3)"				+ ",field_varchar VARCHAR(255)"				+ ",field_date DATE"				+ ",field_time TIME"				+ ",field_year YEAR"				+ ",field_timestamp TIMESTAMP"				+ ",field_datetime DATETIME"				+ ",field_tinyblob TINYBLOB"				+ ",field_blob BLOB"				+ ",field_mediumblob MEDIUMBLOB"				+ ",field_longblob LONGBLOB"				+ ",field_tinytext TINYTEXT"				+ ",field_text TEXT"				+ ",field_mediumtext MEDIUMTEXT"				+ ",field_longtext LONGTEXT"				+ ",field_enum ENUM('1','2','3')"				+ ",field_set SET('1','2','3'))";		try {			this.stmt.executeUpdate("DROP TABLE IF EXISTS testBug3570");			this.stmt.executeUpdate(createTableQuery);			ResultSet dbmdRs = this.conn.getMetaData().getColumns(					this.conn.getCatalog(), null, "testBug3570", "%");			this.rs = this.stmt.executeQuery("SELECT * FROM testBug3570");			ResultSetMetaData rsmd = this.rs.getMetaData();			while (dbmdRs.next()) {				String columnName = dbmdRs.getString(4);				int typeFromGetColumns = dbmdRs.getInt(5);				int typeFromRSMD = rsmd.getColumnType(this.rs						.findColumn(columnName));				//				// TODO: Server needs to send these types correctly....				//				if (!"field_tinyblob".equals(columnName)						&& !"field_tinytext".equals(columnName)) {					assertTrue(columnName + " -> type from DBMD.getColumns("							+ typeFromGetColumns							+ ") != type from RSMD.getColumnType("							+ typeFromRSMD + ")",							typeFromGetColumns == typeFromRSMD);				}			}		} finally {			this.stmt.executeUpdate("DROP TABLE IF EXISTS testBug3570");		}	}	/**	 * Tests char/varchar bug	 * 	 * @throws Exception	 *             if any errors occur	 */	public void testCharVarchar() throws Exception {		try {			this.stmt.execute("DROP TABLE IF EXISTS charVarCharTest");			this.stmt.execute("CREATE TABLE charVarCharTest ("					+ "  TableName VARCHAR(64)," + "  FieldName VARCHAR(64),"					+ "  NextCounter INTEGER);");			String query = "SELECT TableName, FieldName, NextCounter FROM charVarCharTest";			this.rs = this.stmt.executeQuery(query);			ResultSetMetaData rsmeta = this.rs.getMetaData();			assertTrue(rsmeta.getColumnTypeName(1).equalsIgnoreCase("VARCHAR"));			// is "CHAR", expected "VARCHAR"			assertTrue(rsmeta.getColumnType(1) == 12);			// is 1 (java.sql.Types.CHAR), expected 12 (java.sql.Types.VARCHAR)		} finally {			this.stmt.execute("DROP TABLE IF EXISTS charVarCharTest");		}	}	/**	 * Tests fix for BUG#1673, where DatabaseMetaData.getColumns() is not	 * returning correct column ordinal info for non '%' column name patterns.	 * 	 * @throws Exception	 *             if the test fails for any reason	 */	public void testFixForBug1673() throws Exception {		try {			this.stmt.executeUpdate("DROP TABLE IF EXISTS testBug1673");			this.stmt					.executeUpdate("CREATE TABLE testBug1673 (field_1 INT, field_2 INT)");			DatabaseMetaData dbmd = this.conn.getMetaData();			int ordinalPosOfCol2Full = 0;			this.rs = dbmd.getColumns(this.conn.getCatalog(), null,					"testBug1673", null);			while (this.rs.next()) {				if (this.rs.getString(4).equals("field_2")) {					ordinalPosOfCol2Full = this.rs.getInt(17);				}			}			int ordinalPosOfCol2Scoped = 0;			this.rs = dbmd.getColumns(this.conn.getCatalog(), null,					"testBug1673", "field_2");			while (this.rs.next()) {				if (this.rs.getString(4).equals("field_2")) {					ordinalPosOfCol2Scoped = this.rs.getInt(17);				}			}			assertTrue("Ordinal position in full column list of '"					+ ordinalPosOfCol2Full					+ "' != ordinal position in pattern search, '"					+ ordinalPosOfCol2Scoped + "'.",					(ordinalPosOfCol2Full != 0)							&& (ordinalPosOfCol2Scoped != 0)							&& (ordinalPosOfCol2Scoped == ordinalPosOfCol2Full));		} finally {			this.stmt.executeUpdate("DROP TABLE IF EXISTS testBug1673");		}	}	/**	 * Tests bug reported by OpenOffice team with getColumns and LONGBLOB	 * 	 * @throws Exception	 *             if any errors occur	 */	public void testGetColumns() throws Exception {		try {			this.stmt					.execute("CREATE TABLE IF NOT EXISTS longblob_regress(field_1 longblob)");			DatabaseMetaData dbmd = this.conn.getMetaData();			ResultSet dbmdRs = null;			try {				dbmdRs = dbmd.getColumns("", "", "longblob_regress", "%");				while (dbmdRs.next()) {					dbmdRs.getInt(7);				}			} finally {				if (dbmdRs != null) {					try {						dbmdRs.close();					} catch (SQLException ex) {						;					}				}			}		} finally {			this.stmt.execute("DROP TABLE IF EXISTS longblob_regress");		}	}	/**	 * Tests fix for Bug#	 * 	 * @throws Exception	 *             if an error occurs	 */	public void testGetColumnsBug1099() throws Exception {		try {			this.stmt					.executeUpdate("DROP TABLE IF EXISTS testGetColumnsBug1099");			DatabaseMetaData dbmd = this.conn.getMetaData();			this.rs = dbmd.getTypeInfo();			StringBuffer types = new StringBuffer();			HashMap alreadyDoneTypes = new HashMap();			while (this.rs.next()) {				String typeName = this.rs.getString("TYPE_NAME");				String createParams = this.rs.getString("CREATE_PARAMS");				if ((typeName.indexOf("BINARY") == -1)						&& !typeName.equals("LONG VARCHAR")) {					if (!alreadyDoneTypes.containsKey(typeName)) {						alreadyDoneTypes.put(typeName, null);						if (types.length() != 0) {							types.append(", \n");						}						int typeNameLength = typeName.length();						StringBuffer safeTypeName = new StringBuffer(								typeNameLength);						for (int i = 0; i < typeNameLength; i++) {							char c = typeName.charAt(i);							if (Character.isWhitespace(c)) {								safeTypeName.append("_");							} else {								safeTypeName.append(c);							}						}						types.append(safeTypeName.toString());						types.append("Column ");						types.append(typeName);						if (typeName.indexOf("CHAR") != -1) {							types.append(" (1)");						} else if (typeName.equalsIgnoreCase("enum")								|| typeName.equalsIgnoreCase("set")) {							types.append("('a', 'b', 'c')");						}					}				}			}			this.stmt.executeUpdate("CREATE TABLE testGetColumnsBug1099("					+ types.toString() + ")");			dbmd.getColumns(null, this.conn.getCatalog(),					"testGetColumnsBug1099", "%");		} finally {			this.stmt					.executeUpdate("DROP TABLE IF EXISTS testGetColumnsBug1099");		}	}	/**	 * Tests whether or not unsigned columns are reported correctly in	 * DBMD.getColumns	 * 	 * @throws Exception	 */	public void testGetColumnsUnsigned() throws Exception {		try {			this.stmt.executeUpdate("DROP TABLE IF EXISTS testGetUnsignedCols");

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
91污在线观看| 精品一区二区三区在线视频| 国产v综合v亚洲欧| 国产人成一区二区三区影院| 国产精品亚洲一区二区三区妖精| 欧美xfplay| 国内偷窥港台综合视频在线播放| 精品国产一区二区三区不卡| 国内精品国产成人国产三级粉色| 国产日韩欧美高清在线| 91视频观看免费| 亚洲国产精品精华液网站| 欧美日韩久久久一区| 亚洲午夜日本在线观看| 在线播放国产精品二区一二区四区 | 国产在线精品一区二区三区不卡| 欧美精品一区男女天堂| 成人免费高清在线| 亚洲最大成人网4388xx| 欧美一级高清片| 成人小视频在线| 六月婷婷色综合| 久久综合久久综合久久| 一本久久综合亚洲鲁鲁五月天| 亚洲成人福利片| 精品福利一区二区三区免费视频| eeuss影院一区二区三区| 亚洲国产一区二区在线播放| 精品久久国产字幕高潮| av亚洲精华国产精华精| 蜜桃一区二区三区在线| 日本一区二区三区在线观看| 欧美日韩大陆在线| 国产麻豆91精品| 一二三区精品福利视频| 久久亚洲一级片| 91福利资源站| 国产伦理精品不卡| 丝袜a∨在线一区二区三区不卡 | 久久久久久**毛片大全| 欧美在线不卡一区| 国产美女娇喘av呻吟久久| 亚洲国产精品久久不卡毛片| 国产午夜精品一区二区三区嫩草| 欧美精品久久99| 成人在线综合网站| 狠狠色综合日日| 视频一区视频二区在线观看| 亚洲天堂中文字幕| 日本一区二区三区四区在线视频| 67194成人在线观看| 91福利国产成人精品照片| 国产不卡免费视频| 日本vs亚洲vs韩国一区三区二区| 亚洲精品国产a久久久久久| 2023国产精华国产精品| 正在播放一区二区| 欧美视频在线一区二区三区| 成人av电影免费观看| 国产一区啦啦啦在线观看| 人人精品人人爱| 亚洲一区二区三区视频在线 | 91浏览器打开| yourporn久久国产精品| 国产精品69毛片高清亚洲| 美女视频网站久久| 日本三级韩国三级欧美三级| 亚洲欧美视频在线观看视频| 日本一二三不卡| 欧美经典一区二区三区| 亚洲精品一区二区三区香蕉| 日韩午夜小视频| 欧美一区二区三区日韩视频| 91精品国产一区二区| 欧美日韩国产首页| 欧洲一区二区三区在线| 欧美色精品天天在线观看视频| 91久久精品一区二区三区| 欧美在线观看一区二区| 欧美又粗又大又爽| 欧美日韩国产综合久久| 日韩视频一区二区在线观看| 91福利在线播放| 欧美日韩免费高清一区色橹橹 | 亚洲精品中文在线观看| 亚洲精品ww久久久久久p站| 亚洲视频一区二区免费在线观看| 亚洲欧美在线视频| 亚洲人成网站色在线观看 | 天天爽夜夜爽夜夜爽精品视频| 亚洲在线视频一区| 午夜久久久久久电影| 蜜桃av一区二区| 国产成人av电影在线观看| 大美女一区二区三区| 91久久精品国产91性色tv| 欧美日韩精品一区二区三区四区| 欧美一区二区三区日韩| 久久蜜桃av一区精品变态类天堂| 国产精品网曝门| 亚洲国产精品人人做人人爽| 麻豆一区二区三区| 成人免费视频一区| 欧美自拍丝袜亚洲| 日韩免费福利电影在线观看| 国产女人aaa级久久久级| 亚洲日本欧美天堂| 天堂va蜜桃一区二区三区漫画版| 狠狠色丁香婷婷综合| 成人免费看黄yyy456| 欧美视频一区二区三区| 精品久久久久一区| 综合久久久久综合| 蜜桃免费网站一区二区三区| 成年人网站91| 91.麻豆视频| 国产蜜臀av在线一区二区三区| 亚洲欧美日韩一区二区| 蜜臀久久99精品久久久画质超高清| 国产超碰在线一区| 欧美日韩国产免费| 国产女主播视频一区二区| 午夜视频一区二区| 国产激情精品久久久第一区二区 | 三级一区在线视频先锋| 懂色av中文一区二区三区 | 香蕉乱码成人久久天堂爱免费| 国产精品一区二区果冻传媒| 香蕉成人伊视频在线观看| 粉嫩高潮美女一区二区三区| 亚洲人成在线播放网站岛国| 麻豆成人综合网| 欧美专区亚洲专区| 欧美精品一区二区三区高清aⅴ| 中文字幕一区二区三区不卡在线| 蜜桃久久久久久久| 欧美视频一区在线| 国产精品入口麻豆原神| 久久国产夜色精品鲁鲁99| 色哟哟国产精品免费观看| 久久尤物电影视频在线观看| 午夜精品久久久| 丰满少妇在线播放bd日韩电影| 在线不卡一区二区| 亚洲午夜成aⅴ人片| 91在线观看污| 亚洲国产精品二十页| 国产一区二区三区在线观看免费视频| 在线观看视频91| 亚洲男同性视频| eeuss鲁片一区二区三区| 久久久久久日产精品| 国产精品911| 国产夜色精品一区二区av| 日韩精品亚洲一区| 欧美日韩一本到| 亚洲国产色一区| 在线免费观看日本一区| 亚洲图片另类小说| 91香蕉视频污在线| 亚洲日本va午夜在线电影| 99热99精品| 亚洲欧美韩国综合色| 99精品视频中文字幕| 国产精品久久久久7777按摩| 风间由美一区二区三区在线观看 | 美女网站一区二区| 欧美一区二区福利在线| 日本欧美在线看| 日韩午夜精品电影| 美脚の诱脚舐め脚责91| 日韩精品一区二区三区中文不卡| 蜜臀av一级做a爰片久久| 精品免费日韩av| 国产不卡免费视频| 自拍偷在线精品自拍偷无码专区| 99国产精品国产精品毛片| 亚洲美女屁股眼交3| 欧美专区日韩专区| 亚洲国产视频直播| 日韩视频免费观看高清完整版| 免费成人你懂的| 久久精品视频在线看| 成人涩涩免费视频| 亚洲综合一二三区| 日韩一区二区三区在线视频| 国内一区二区视频| 日韩美女啊v在线免费观看| 色哟哟在线观看一区二区三区| 一区二区三区久久| 欧美一区二区视频在线观看 | 国产精品资源在线观看| 久久男人中文字幕资源站| 丁香桃色午夜亚洲一区二区三区| 亚洲视频一区二区免费在线观看| 欧美色国产精品| 国精产品一区一区三区mba视频| 国产精品美女久久久久久久久| 91久久精品网| 狠狠色丁香九九婷婷综合五月|