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

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

?? statementstest.java

?? mysql jdbc驅(qū)動程序 mysql jdbc驅(qū)動程序 mysql jdbc驅(qū)動程序 mysql jdbc驅(qū)動程序
?? JAVA
?? 第 1 頁 / 共 4 頁
字號:
			multiStmt.addBatch("INSERT INTO testStatementRewriteBatch(field1) VALUES (3)");			multiStmt.addBatch("INSERT INTO testStatementRewriteBatch(field1) VALUES (4)");			multiStmt.addBatch("UPDATE testStatementRewriteBatch SET field1=5 WHERE field1=1");			multiStmt.addBatch("UPDATE testStatementRewriteBatch SET field1=6 WHERE field1=2 OR field1=3");			int[] counts = multiStmt.executeBatch();						if (!isRunningOnJdk131()) {				ResultSet genKeys = multiStmt.getGeneratedKeys();				for (int i = 1; i < 5; i++) {					genKeys.next();					assertEquals(i, genKeys.getInt(1));				}			}			assertEquals(counts.length, 6);			assertEquals(counts[0], 1);			assertEquals(counts[1], 1);			assertEquals(counts[2], 1);			assertEquals(counts[3], 1);			assertEquals(counts[4], 1);			assertEquals(counts[5], 2);			this.rs = multiStmt.executeQuery("SELECT field1 FROM testStatementRewriteBatch ORDER BY field1");			assertTrue(this.rs.next());			assertEquals(this.rs.getInt(1), 4);			assertTrue(this.rs.next());			assertEquals(this.rs.getInt(1), 5);			assertTrue(this.rs.next());			assertEquals(this.rs.getInt(1), 6);			assertTrue(this.rs.next());			assertEquals(this.rs.getInt(1), 6);			createTable("testStatementRewriteBatch", "(pk_field INT PRIMARY KEY NOT NULL AUTO_INCREMENT, field1 INT)");			props.clear();			props.setProperty("rewriteBatchedStatements", "true");			props.setProperty("sessionVariables", "max_allowed_packet=1024");			multiConn = getConnectionWithProps(props);			multiStmt = multiConn.createStatement();			for (int i = 0; i < 1000; i++) {				multiStmt.addBatch("INSERT INTO testStatementRewriteBatch(field1) VALUES (" + i + ")");			}			multiStmt.executeBatch();						if (!isRunningOnJdk131()) {				ResultSet genKeys = multiStmt.getGeneratedKeys();				for (int i = 1; i < 1000; i++) {					genKeys.next();					assertEquals(i, genKeys.getInt(1));				}			}			createTable("testStatementRewriteBatch", "(pk_field INT PRIMARY KEY NOT NULL AUTO_INCREMENT, field1 INT)");			props.clear();			props.setProperty("useServerPrepStmts", j == 0 ? "true" : "false");			props.setProperty("rewriteBatchedStatements", "true");			multiConn = getConnectionWithProps(props);						PreparedStatement pStmt = null;						if (!isRunningOnJdk131()) {				pStmt = multiConn.prepareStatement("INSERT INTO testStatementRewriteBatch(field1) VALUES (?)", 						Statement.RETURN_GENERATED_KEYS);					for (int i = 0; i < 1000; i++) {					pStmt.setInt(1, i);					pStmt.addBatch();				}					pStmt.executeBatch();							ResultSet genKeys = pStmt.getGeneratedKeys();				for (int i = 1; i < 1000; i++) {					genKeys.next();					assertEquals(i, genKeys.getInt(1));				}			}			createTable("testStatementRewriteBatch", "(pk_field INT PRIMARY KEY NOT NULL AUTO_INCREMENT, field1 INT)");			props.setProperty("useServerPrepStmts", j == 0 ? "true" : "false");			props.setProperty("rewriteBatchedStatements", "true");			props.setProperty("sessionVariables", "max_allowed_packet=1024");			multiConn = getConnectionWithProps(props);						if (!isRunningOnJdk131()) {								pStmt = multiConn.prepareStatement("INSERT INTO testStatementRewriteBatch(field1) VALUES (?)", 					Statement.RETURN_GENERATED_KEYS);				for (int i = 0; i < 1000; i++) {					pStmt.setInt(1, i);					pStmt.addBatch();				}				pStmt.executeBatch();										ResultSet genKeys = pStmt.getGeneratedKeys();				for (int i = 1; i < 1000; i++) {					genKeys.next();					assertEquals(i, genKeys.getInt(1));				}			}						Object[][] differentTypes = new Object[1000][14];						createTable("rewriteBatchTypes", "(internalOrder int, f1 tinyint null, "					+ "f2 smallint null, f3 int null, f4 bigint null, "					+ "f5 decimal(8, 2) null, f6 float null, f7 double null, "					+ "f8 varchar(255) null, f9 text null, f10 blob null, " 					+ "f11 blob null, f12 datetime null, f13 time null, f14 date null)");						for (int i = 0; i < 1000; i++) {				differentTypes[i][0] = Math.random() < .5 ? null : new Byte((byte)(Math.random() * 127));				differentTypes[i][1] = Math.random() < .5 ? null : new Short((short)(Math.random() * Short.MAX_VALUE));				differentTypes[i][2] = Math.random() < .5 ? null : new Integer((int)(Math.random() * Integer.MAX_VALUE));				differentTypes[i][3] = Math.random() < .5 ? null : new Long((long)(Math.random() * Long.MAX_VALUE));				differentTypes[i][4] = Math.random() < .5 ? null : new BigDecimal("19.95");				differentTypes[i][5] = Math.random() < .5 ? null : new Float(3 + ((float)(Math.random())));				differentTypes[i][6] = Math.random() < .5 ? null : new Double(3 + (Math.random()));				differentTypes[i][7] = Math.random() < .5 ? null : randomString();				differentTypes[i][8] = Math.random() < .5 ? null : randomString();				differentTypes[i][9] = Math.random() < .5 ? null : randomString().getBytes();				differentTypes[i][10] = Math.random() < .5 ? null : randomString().getBytes();				differentTypes[i][11] = Math.random() < .5 ? null : new Timestamp(System.currentTimeMillis());				differentTypes[i][12] = Math.random() < .5 ? null : new Time(System.currentTimeMillis());				differentTypes[i][13] = Math.random() < .5 ? null : new Date(System.currentTimeMillis());			}						props.setProperty("useServerPrepStmts", j == 0 ? "true" : "false");			props.setProperty("rewriteBatchedStatements", "true");			props.setProperty("sessionVariables", "max_allowed_packet=1024");			multiConn = getConnectionWithProps(props);			pStmt = multiConn.prepareStatement("INSERT INTO rewriteBatchTypes(internalOrder,f1,f2,f3,f4,f5,f6,f7,f8,f9,f10,f11,f12,f13,f14) VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)");						for (int i = 0; i < 1000; i++) {				pStmt.setInt(1, i);				for (int k = 0; k < 14; k++) {					if (k == 8) {						String asString = (String)differentTypes[i][k];												if (asString == null) {							pStmt.setObject(k + 2, null);						} else {							pStmt.setCharacterStream(k + 2, new StringReader(asString), asString.length());						}					} else if (k == 9) {						byte[] asBytes = (byte[])differentTypes[i][k];												if (asBytes == null) {							pStmt.setObject(k + 2, null);						} else {							pStmt.setBinaryStream(k + 2, new ByteArrayInputStream(asBytes), asBytes.length);						}					} else {						pStmt.setObject(k + 2, differentTypes[i][k]);					}				}				pStmt.addBatch();			}						pStmt.executeBatch();						this.rs = this.stmt.executeQuery("SELECT f1, f2, f3, f4, f5, f6, f7, f8, f9, f10, f11, f12, f13, f14 FROM rewriteBatchTypes ORDER BY internalOrder");						int idx = 0;						// We need to format this ourselves, since we have to strip the nanos off of			// TIMESTAMPs, so .equals() doesn't really work...						SimpleDateFormat sdf = new SimpleDateFormat("''yyyy-MM-dd HH:mm:ss''", Locale.US);						while (this.rs.next()) {				for (int k = 0; k < 14; k++) {					if (differentTypes[idx][k] == null) {						assertTrue("On row " + idx + " expected NULL, found " + this.rs.getObject(k + 1) 								+ " in column " + (k + 1), this.rs.getObject(k + 1) == null);					} else {						String className = differentTypes[idx][k].getClass().getName();											if (className.equals("java.io.StringReader")) {							StringReader reader = (StringReader)differentTypes[idx][k];							StringBuffer buf = new StringBuffer();														int c = 0;														while ((c = reader.read()) != -1) {								buf.append((char)c);							}														String asString = this.rs.getString(k + 1);														assertEquals("On row " + idx + ", column " + (k + 1), buf.toString(), asString);													} else if (differentTypes[idx][k] instanceof java.io.InputStream) {							ByteArrayOutputStream bOut = new ByteArrayOutputStream();														int bytesRead = 0;														byte[] buf = new byte[128];							InputStream in = (InputStream)differentTypes[idx][k];														while ((bytesRead = in.read(buf)) != -1) {								bOut.write(buf, 0, bytesRead);							}														byte[] expected = bOut.toByteArray();							byte[] actual = this.rs.getBytes(k + 1);														assertEquals("On row " + idx + ", column " + (k + 1), StringUtils.dumpAsHex(expected, expected.length), StringUtils.dumpAsHex(actual, actual.length));						} else if (differentTypes[idx][k] instanceof byte[]) {							byte[] expected = (byte[])differentTypes[idx][k];							byte[] actual = this.rs.getBytes(k + 1);							assertEquals("On row " + idx + ", column " + (k + 1), StringUtils.dumpAsHex(expected, expected.length), StringUtils.dumpAsHex(actual, actual.length));						} else if (differentTypes[idx][k] instanceof Timestamp) {							assertEquals("On row " + idx + ", column " + (k + 1), sdf.format(differentTypes[idx][k]), sdf.format(this.rs.getObject(k + 1)));						} else if (differentTypes[idx][k] instanceof Double) {							assertEquals("On row " + idx + ", column " + (k + 1), ((Double)differentTypes[idx][k]).doubleValue(), this.rs.getDouble(k + 1), .1);						} else if (differentTypes[idx][k] instanceof Float) {							assertEquals("On row " + idx + ", column " + (k + 1), ((Float)differentTypes[idx][k]).floatValue(), this.rs.getFloat(k + 1), .1);							} else if (className.equals("java.lang.Byte")) {							// special mapping in JDBC for ResultSet.getObject()							assertEquals("On row " + idx + ", column " + (k + 1), new Integer(((Byte)differentTypes[idx][k]).byteValue()), this.rs.getObject(k + 1)); 						} else if (className.equals("java.lang.Short")) {							// special mapping in JDBC for ResultSet.getObject()							assertEquals("On row " + idx + ", column " + (k + 1), new Integer(((Short)differentTypes[idx][k]).shortValue()), this.rs.getObject(k + 1)); 						} else {							assertEquals("On row " + idx + ", column " + (k + 1) + " (" + differentTypes[idx][k].getClass() + "/" + this.rs.getObject(k + 1).getClass(), differentTypes[idx][k].toString(), this.rs.getObject(k + 1).toString());						}					}				}								idx++;			}		}	}	public void testStreamChange() throws Exception {		createTable("testStreamChange",				"(field1 varchar(32), field2 int, field3 TEXT, field4 BLOB)");		this.pstmt = this.conn				.prepareStatement("INSERT INTO testStreamChange VALUES (?, ?, ?, ?)");		try {			this.pstmt.setString(1, "A");			this.pstmt.setInt(2, 1);			char[] cArray = { 'A', 'B', 'C' };			Reader r = new CharArrayReader(cArray);			this.pstmt.setCharacterStream(3, r, cArray.length);			byte[] bArray = { 'D', 'E', 'F' };			ByteArrayInputStream bais = new ByteArrayInputStream(bArray);			this.pstmt.setBinaryStream(4, bais, bArray.length);			assertEquals(1, this.pstmt.executeUpdate());			this.rs = this.stmt					.executeQuery("SELECT field3, field4 from testStreamChange where field1='A'");			this.rs.next();			assertEquals("ABC", this.rs.getString(1));			assertEquals("DEF", this.rs.getString(2));			char[] ucArray = { 'C', 'E', 'S', 'U' };			this.pstmt.setString(1, "CESU");			this.pstmt.setInt(2, 3);			Reader ucReader = new CharArrayReader(ucArray);			this.pstmt.setCharacterStream(3, ucReader, ucArray.length);			this.pstmt.setBinaryStream(4, null, 0);			assertEquals(1, this.pstmt.executeUpdate());			this.rs = this.stmt					.executeQuery("SELECT field3, field4 from testStreamChange where field1='CESU'");			this.rs.next();			assertEquals("CESU", this.rs.getString(1));			assertEquals(null, this.rs.getString(2));		} finally {			if (this.rs != null) {				this.rs.close();				this.rs = null;			}			if (this.pstmt != null) {				this.pstmt.close();				this.pstmt = null;			}		}	}	/**	 * DOCUMENT ME!	 * 	 * @throws SQLException	 *             DOCUMENT ME!	 */	public void testStubbed() throws SQLException {		if (!isRunningOnJdk131()) {			try {				this.stmt.getResultSetHoldability();			} catch (NotImplemented notImplEx) {				;			}		}	}		public void testTruncationOnRead() throws Exception {		this.rs = this.stmt.executeQuery("SELECT '" + Long.MAX_VALUE + "'");		this.rs.next();		try {			this.rs.getByte(1);			fail("Should've thrown an out-of-range exception");		} catch (SQLException sqlEx) {			assertTrue(SQLError.SQL_STATE_NUMERIC_VALUE_OUT_OF_RANGE					.equals(sqlEx.getSQLState()));		}		try {			this.rs.getShort(1);			fail("Should've thrown an out-of-range exception");		} catch (SQLException sqlEx) {			assertTrue(SQLError.SQL_STATE_NUMERIC_VALUE_OUT_OF_RANGE					.equals(sqlEx.getSQLState()));		}		try {			this.rs.getInt(1);			fail("Should've thrown an out-of-range exception");		} catch (SQLException sqlEx) {			assertTrue(SQLError.SQL_STATE_NUMERIC_VALUE_OUT_OF_RANGE					.equals(sqlEx.getSQLState()));		}		this.rs = this.stmt.executeQuery("SELECT '" + Double.MAX_VALUE + "'");		this.rs.next();		try {			this.rs.getByte(1);			fail("Should've thrown an out-of-range exception");		} catch (SQLException sqlEx) {			assertTrue(SQLError.SQL_STATE_NUMERIC_VALUE_OUT_OF_RANGE					.equals(sqlEx.getSQLState()));		}		try {			this.rs.getShort(1);			fail("Should've thrown an out-of-range exception");		} catch (SQLException sqlEx) {			assertTrue(SQLError.SQL_STATE_NUMERIC_VALUE_OUT_OF_RANGE					.equals(sqlEx.getSQLState()));		}		try {			this.rs.getInt(1);			fail("Should've thrown an out-of-range exception");		} catch (SQLException sqlEx) {			assertTrue(SQLError.SQL_STATE_NUMERIC_VALUE_OUT_OF_RANGE					.equals(sqlEx.getSQLState()));		}		try {			this.rs.getLong(1);			fail("Should've thrown an out-of-range exception");		} catch (SQLException sqlEx) {			assertTrue(SQLError.SQL_STATE_NUMERIC_VALUE_OUT_OF_RANGE					.equals(sqlEx.getSQLState()));		}		try {			this.rs.getLong(1);			fail("Should've thrown an out-of-range exception");		} catch (SQLException sqlEx) {			assertTrue(SQLError.SQL_STATE_NUMERIC_VALUE_OUT_OF_RANGE					.equals(sqlEx.getSQLState()));		}		PreparedStatement pStmt = null;		System.out				.println("Testing prepared statements with binary result sets now");		try {			this.stmt					.executeUpdate("DROP TABLE IF EXISTS testTruncationOnRead");			this.stmt					.executeUpdate("CREATE TABLE testTruncationOnRead(intField INTEGER, bigintField BIGINT, doubleField DOUBLE)");			this.stmt.executeUpdate("INSERT INTO testTruncationOnRead VALUES ("					+ Integer.MAX_VALUE + ", " + Long.MAX_VALUE + ", "					+ Double.MAX_VALUE + ")");			this.stmt.executeUpdate("INSERT INTO testTruncationOnRead VALUES ("					+ Integer.MIN_VALUE + ", " + Long.MIN_VALUE + ", "					+ Double.MIN_VALUE + ")");			pStmt = this.conn					.prepareStatement("SELECT intField, bigintField, doubleField FROM testTruncationOnRead ORDER BY intField DESC");			this.rs = pStmt.executeQuery();			this.rs.next();			try {				this.rs.getByte(1);				fail("Should've thrown an out-of-range exception");			} catch (SQLException sqlEx) {				assertTrue(SQLError.SQL_STATE_NUMERIC_VALUE_OUT_OF_RANGE						.equals(sqlEx.getSQLState()));			}			try {				this.rs.getInt(2);				fail("Should've thrown an out-of-range exception");			} catch (SQLException sqlEx) {				assertTrue(SQLError.SQL_STATE_NUMERIC_VALUE_OUT_OF_RANGE						.equals(sqlEx.getSQLState()));			}			try {				this.rs.getLong(3);				fail("Should've thrown an out-of-range exception");			} catch (SQLException sqlEx) {				assertTrue(SQLError.SQL_STATE_NUMERIC_VALUE_OUT_OF_RANGE						.equals(sqlEx.getSQLState()));			}		} finally {			this.stmt					.executeUpdate("DROP TABLE IF EXISTS testTruncationOnRead");		}	}}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日韩制服丝袜先锋影音| 欧美一区二区观看视频| 国产精品欧美一级免费| 国产精品69毛片高清亚洲| 欧美激情在线免费观看| 99热精品一区二区| 亚洲香蕉伊在人在线观| 91精品国产日韩91久久久久久| 免费观看在线综合| 久久久久久久免费视频了| 99久久久精品| 亚洲观看高清完整版在线观看| 欧美一区二区三区性视频| 国产精品一区二区久激情瑜伽| 国产精品家庭影院| 欧美日韩视频在线一区二区| 麻豆成人av在线| 中文字幕av免费专区久久| 91麻豆国产精品久久| 五月天激情综合| 亚洲国产精品精华液ab| 在线观看国产日韩| 老司机午夜精品| 亚洲欧美偷拍另类a∨色屁股| 欧美色网站导航| 国产一区二区在线观看视频| 亚洲欧美中日韩| 日韩一二三区不卡| 成人免费视频国产在线观看| 婷婷久久综合九色国产成人| 久久久久久久综合色一本| 欧美在线一二三| 国产麻豆精品在线观看| 一区二区三区高清| 久久久噜噜噜久久人人看| 欧美日韩综合在线| 粉嫩嫩av羞羞动漫久久久| 五月激情综合色| 国产精品入口麻豆原神| 91精品国产色综合久久不卡蜜臀| 国产成人8x视频一区二区| 午夜欧美一区二区三区在线播放| 亚洲国产精品t66y| 精品国产青草久久久久福利| 色猫猫国产区一区二在线视频| 黄色日韩网站视频| 免费看欧美女人艹b| 亚洲三级免费观看| 国产精品色哟哟| 久久久精品中文字幕麻豆发布| 欧美日韩国产天堂| 91麻豆国产福利在线观看| 国产老女人精品毛片久久| 男女男精品视频| 亚洲小少妇裸体bbw| 亚洲精品视频在线看| 国产精品美女久久久久aⅴ国产馆 国产精品美女久久久久av爽李琼 国产精品美女久久久久高潮 | 亚洲视频你懂的| 久久综合九色综合97婷婷女人| 色欧美片视频在线观看| 国产成人免费在线视频| 久久精品国产一区二区三区免费看| 一区二区三区 在线观看视频| 欧美—级在线免费片| 精品久久久久久最新网址| 欧美日韩国产大片| 在线免费亚洲电影| 97精品久久久午夜一区二区三区 | 视频一区视频二区中文| 亚洲精品国产无天堂网2021| 国产精品美女www爽爽爽| 久久久噜噜噜久久中文字幕色伊伊| 欧美电影一区二区| 欧美日韩高清一区| 欧美精品久久久久久久多人混战| 色婷婷久久久综合中文字幕| 色94色欧美sute亚洲线路一ni| 不卡的电影网站| 99re视频这里只有精品| 白白色亚洲国产精品| 99久久国产综合精品麻豆| 99视频一区二区三区| 91免费观看视频在线| 波多野结衣中文字幕一区| 不卡一区在线观看| 91蝌蚪porny九色| 欧美亚洲禁片免费| 欧美日韩精品免费观看视频| 欧美日韩精品一区二区三区| 日韩午夜小视频| 久久久久一区二区三区四区| 国产精品免费视频一区| 亚洲天堂久久久久久久| 亚洲午夜激情av| 久久国产尿小便嘘嘘| 国内国产精品久久| 成人av先锋影音| 欧美亚日韩国产aⅴ精品中极品| 欧美色综合天天久久综合精品| 欧美精品久久久久久久久老牛影院| 日韩欧美一卡二卡| 国产精品美女一区二区在线观看| 亚洲色图视频网| 图片区小说区区亚洲影院| 精品一区二区三区日韩| 大桥未久av一区二区三区中文| 91免费看片在线观看| 欧美一级日韩免费不卡| 国产精品福利一区二区| 一区二区三区免费在线观看| 蜜桃视频一区二区| 91网站在线播放| 日韩一区二区三区四区五区六区| 久久久综合网站| 亚洲一区二区三区四区在线| 国产一区二区三区免费在线观看| 99re这里都是精品| 欧美精品一区二区三区蜜桃视频| 中文字幕在线观看一区二区| 日日摸夜夜添夜夜添亚洲女人| 国产乱码精品一区二区三区五月婷| 色综合久久综合中文综合网| 精品国产露脸精彩对白| 樱花草国产18久久久久| 黄色日韩网站视频| 欧美日韩亚洲国产综合| 国产精品福利影院| 韩国av一区二区三区| 欧美无人高清视频在线观看| 国产精品卡一卡二| 精品在线播放免费| 欧美视频一区二区在线观看| 欧美激情综合在线| 精品中文字幕一区二区| 欧美男人的天堂一二区| 国产精品美女一区二区在线观看| 麻豆精品视频在线| 在线免费亚洲电影| 国产精品国产三级国产aⅴ入口 | 欧美成人免费网站| 亚洲一区二区精品久久av| 国产电影一区二区三区| 91超碰这里只有精品国产| 亚洲裸体xxx| 国产成人激情av| 欧美精品一区二区三区一线天视频| 亚洲成a人v欧美综合天堂下载| 成人免费视频网站在线观看| 久久亚洲欧美国产精品乐播 | 青草国产精品久久久久久| eeuss鲁一区二区三区| 久久久久久久免费视频了| 蜜臀av性久久久久av蜜臀妖精| 欧美日韩精品一区二区三区四区| 一区二区三区久久久| 91一区一区三区| 自拍偷拍欧美精品| 91影视在线播放| 亚洲精品国产高清久久伦理二区| 成熟亚洲日本毛茸茸凸凹| 精品捆绑美女sm三区| 免费的国产精品| 欧美成人性福生活免费看| 美国一区二区三区在线播放| 日韩女同互慰一区二区| 日日欢夜夜爽一区| 日韩欧美激情四射| 国产在线精品一区二区三区不卡| 日韩欧美在线观看一区二区三区| 丝袜国产日韩另类美女| 欧美精品国产精品| 卡一卡二国产精品| 久久先锋影音av鲁色资源网| 久久99热国产| 国产日韩精品一区| 成人av资源网站| 亚洲欧美另类久久久精品| 一本大道av一区二区在线播放| 亚洲人成网站精品片在线观看| 在线观看成人小视频| 亚洲国产你懂的| 日韩免费看网站| 国产高清视频一区| 亚洲精选视频在线| 欧美乱妇一区二区三区不卡视频| 偷窥国产亚洲免费视频| 日韩精品中文字幕一区二区三区| 国内久久精品视频| 国产精品久久久久久久久免费丝袜 | 日本一区二区三区视频视频| 99re这里只有精品6| 日韩精品成人一区二区三区| 精品欧美一区二区在线观看| 国产69精品久久99不卡| 亚洲女女做受ⅹxx高潮| 欧美一级高清大全免费观看| 国产精品99久久不卡二区| 亚洲伦理在线免费看| 精品国产伦理网| 91麻豆国产在线观看|