📄 optable.java
字号:
import java.sql.*;
import java.net.URL;
class optable{
public static void main (String args[]) {
String url=
"jdbc:microsoft:sqlserver://localhost:1433;User=JavaDB;Password=javadb;DatabaseName=northwind";
String query = "Create Table testtable(ID int)";
String insert1 = "Insert into SecondTable Values (1,'test1','none','no')";
String insert2 = "Insert into SecondTable Values (2,'test2','none','no')";
String query1 = "Create Table SecondTable(ID INT Not NULL UniQUE, Name VARChar(30),Types VARChar(30),Detail VARChar(100))";
String query2 = "Drop Table testtable";
String query0 = "Select * from SecondTable";
try {
//加载jdbc-odbc桥驱动程序
Class.forName ("com.microsoft.jdbc.sqlserver.SQLServerDriver");
Connection con = DriverManager.getConnection (url);
DatabaseMetaData dbmd = con.getMetaData();
//建立一个Statement对象,用这个对象向驱动程序发送SQL语句
Statement stmt = con.createStatement ();
//执行SQL更新操作
stmt.executeUpdate(query);
stmt.executeUpdate(query1);
stmt.executeUpdate(insert1);
stmt.executeUpdate(insert2);
//显示结果集的所有行和列
ResultSet rs = stmt.executeQuery(query0);
dispResultSet (rs);
//显示数据库元数据
System.out.println("show all the tables in the database:");
displayMetadata(dbmd);
//删除testtable
stmt.executeUpdate(query2);
//显示数据库元数据
System.out.println("show all the tables in the database after drop testtable:");
displayMetadata(dbmd);
// 关闭结果集
rs.close();
// 关闭statement对象
stmt.close();
// 关闭连接
con.close();
}
catch (SQLException ex) {
System.out.println ("\n*** SQLException caught ***\n");
while (ex != null) {
System.out.println ("SQLState: " + ex.getSQLState ());
System.out.println ("Message: " + ex.getMessage ());
System.out.println ("Vendor: " + ex.getErrorCode ());
ex = ex.getNextException ();
System.out.println ("");
}
}
catch (java.lang.Exception ex) {
//捕获其他类型的例外
ex.printStackTrace ();
}
}
// dispResultSet 现实整个结果届中的所有的行和列
private static void dispResultSet (ResultSet rs) throws SQLException
{
int i;
//取得结果集的元数据
ResultSetMetaData rsmd = rs.getMetaData ();
// 获得结果集的列数
int numCols = rsmd.getColumnCount ();
// 显示列的标题
for (i=1; i<=numCols; i++) {
if (i > 1) System.out.print(", ");
System.out.print(rsmd.getColumnLabel(i));
}
System.out.println("");
//显示结果集中所有数据
boolean more = rs.next ();
while (more) {
//循环显示结果集中的所有数据
for (i=1; i<=numCols; i++) {
if (i > 1) System.out.print(", ");
System.out.print(rs.getString(i));
}
System.out.println("");
System.out.println("");
//获得下一行数据
more = rs.next ();
}
}
//显示数据库中的所有表格名称
private static void displayMetadata(DatabaseMetaData dbmd)
{
String table[] = {"TABLE"};
try
{
ResultSet rset =dbmd.getTables(null,null,null,table);
//ResultSet rset =dbmd.getTables(null,null,"%"+"table",table);
while(rset.next())
{
System.out.print(rset.getString("TABLE_NAME") + " ");
}
System.out.println("");
rset.close();
}
catch(Exception e)
{
System.out.println("error");
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -