SQL UNION 子句/运算符用于组合两个或多个 SELECT 语句的结果而不返回任何重复的行。
要使用此 UNION 子句,每个 SELECT 语句必须具有
- 选择的列数相同
- 列数相同的表达式
- 相同的数据类型和
- 让它们按相同的顺序
但它们不必具有相同的长度。
a的基本语法UNION 条款如下 -
用法
SELECT column1 [, column2 ] FROM table1 [, table2 ] [WHERE condition] UNION SELECT column1 [, column2 ] FROM table1 [, table2 ] [WHERE condition]
这个 supportsUnion()DatabaseMetaData 接口的方法用于判断底层数据库是否支持 SQL UNION 子句/运算符。
此方法返回一个布尔值,它是 -
- 没错,当底层数据库支持 SQL UNION 子句/运算符时。
- 错误,当底层数据库不支持 SQL UNION 子句/运算符时。
确定底层数据库是否支持 SQL GROUP BY 子句 -
- 确保您的数据库已启动并正在运行。
- 使用 DriverManager 类的 registerDriver() 方法注册驱动程序。传递与底层数据库对应的驱动程序类的对象。
- 使用 DriverManager 类的 getConnection() 方法获取连接对象。将数据库的 URL 和用户名、数据库中用户的密码作为字符串变量传递。
- 使用 Connection 接口的 getMetaData() 方法获取与当前连接相关的 DatabaseMetaData 对象。
- 最后,调用supportsUnion() ResultSetMetaData 接口的方法并将它返回的值保存在一个布尔变量中,比如 bool。如果此值为真,则底层数据库支持 SQL UNION 子句/运算符,否则不支持。
以下JDBC程序与MySQL数据库建立连接,判断并打印是否支持SQL UNION子句/运算符。
示例
import java.sql.Connection;
import java.sql.DatabaseMetaData;
import java.sql.DriverManager;
import java.sql.SQLException;
public class DatabaseMetadata_supportsUnion {
public static void main(String args[]) throws SQLException {
//Registering the Driver
DriverManager.registerDriver(new com.mysql.jdbc.Driver());
//Getting the connection
String url = "jdbc:mysql://localhost/mydatabase";
Connection con = DriverManager.getConnection(url, "root", "password");
System.out.println("Connection established......");
//Retrieving the meta data object
DatabaseMetaData metaData = con.getMetaData();
//Determining whether the underlying database supports SQL UNION clause
boolean bool = metaData.supportsUnion();
if(bool) {
System.out.println("Underlying database supports SQL UNION clause");
} else {
System.out.println("Underlying database doesnot support SQL UNION clause");
}
}
}
输出
Connection established...... Underlying database supports SQL UNION clause
相关用法
- Java DatabaseMetaData supportsGroupBy()用法及代码示例
- Java DataOutputStream writeFloat()用法及代码示例
- Java DataOutputStream writeInt()用法及代码示例
- Java DataOutputStream writeBoolean()用法及代码示例
- Java DataOutputStream writeBytes()用法及代码示例
- Java DataOutputStream flush()用法及代码示例
- Java DataOutputStream size()用法及代码示例
- Java DataInputStream skipBytes()用法及代码示例
- Java DataInputStream readUnsignedShort()用法及代码示例
- Java DataOutputStream writeShort()用法及代码示例
- Java DataInputStream readDouble()用法及代码示例
- Java DataInputStream read()用法及代码示例
- Java DataInputStream readInt()用法及代码示例
- Java DataInputStream readLong()用法及代码示例
- Java DataInputStream readShort()用法及代码示例
- Java DataInputStream readUnsignedByte()用法及代码示例
- Java DataOutputStream writeChars()用法及代码示例
- Java DataOutputStream writeUTF()用法及代码示例
- Java DataOutputStream writeByte()用法及代码示例
- Java DataInputStream readBoolean()用法及代码示例
注:本文由纯净天空筛选整理自Arushi大神的英文原创作品 Java DatabaseMetaData supportsUnion() method with example.。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。