Java連結mysql操作,java連結mysql

來源:互聯網
上載者:User

Java連結mysql操作,java連結mysql
Java 連結mysql資料庫操作java連結mysql首先載入mysql在java中的jdbc驅動

  Class.forName("com.mysql.jdbc.Driver");

其次建立與mysql已有資料庫建立串連

   String url = "jdbc:mysql://localhost:3306/mydata?userUnicode=true&characterEncoding=utf-8&useSSL=false"

  其中jdbc是調用jdbc驅動,mysql是指資料庫類型此處為mysql資料庫,localhost指連結地址,此處指本地mysql資料庫,3306為mysql所使用的連接埠號碼,useUnicode=true&characterEncoding=utf-8是顯示資料庫資料時所使用的編碼格式,useSSl=false制定ssl  連結為關閉,在較高版本中必須制定ssl是否串連,否則會報錯

  Strinf user = “root”;  String psaawd = "123456"

  user為mysql使用者名稱,passwd為密碼

  Connection con = DriverManager.getConnection(url,user,passwd);

  作為初始化的一部分,DriverManager 類會嘗試載入在 "jdbc.drivers" 系統屬性中引用的驅動程式類
  getConnection(String url, String user, String password) 方法試圖建立到給定資料庫 URL 的串連


自此就與資料庫建立了連結

public static Connection getConnection () throws SQLException,java.lang.ClassNotFoundException{//載入mysql的jdbc驅動Class.forName("com.mysql.jdbc.Driver");//取得串連的url和使用者名稱和密碼String url = "jdbc:mysql://localhost:3306/mydate?useUnicode=true&characterEncoding=utf-8&useSSL=false";String user = "root";String passwd = "123456";//建立與資料庫的執行個體串連Connection con = DriverManager.getConnection(url, user,passwd);return con;}
 驗證:建立一個sql靜態語句執行對象,可以靜態執行sql語句

Statement sql = con.createStatement()Statement    靜態執行sql語句,一個Strmaen對象只能開啟一個ResultSet對象,因此,如果Statement讀取多個ResultSet對象,必須有多個Statement對象與之相對應,如果有Statement對象開啟了當前ResultSet對象,則其他讀取該ResultSet對象的Statement必去隱式關閉他。

建立新的表

sql.executeUpdate("create table person(id int(4) not null,name varchar(20),sex char(1),primary key(id))");
添加新成員
sql.executeUpdate("insert into person(1,"王二","M")");

查看錶中的內容

String query = "select * from student";
ResultSet result = sql.executeQuery(query);
while(result.next()){
    
    System.out.println("Id:" + resuli.getInt("id") + "    name:" + result.getString("name") + "    sex:"+ result.getString("sex"));
}

中斷連線

sql.close();
con.close();

 1 //建立靜態sql語句執行對象 2 Statement sql = con.createStatement(); 3  4 //向表person中插入資料 5 sql.executeUpdate("create table person (id int(4) not null auto_increment, name varchar(20) not null default 'name', math int(2) not null default 1, primary key (id) )");             6              7 sql.executeUpdate("insert into person values('liying','w')"); 8 //查詢操作,用ResultSet類,返回結果,顯示在控制台 9 String query = "select * from preson";10 ResultSet result = sql.executeQuery(query);11 while (result.next())12     {13         int id = result.getInt("id");14         String name = result.getString("username");15         String mathsorce = result.getString("sex");16         System.out.println(" |" + id + " |" + name + " |" + mathsorce);17     }18 //關閉資料庫並取消連結19 sql.close();20 con.close();
View Code
//完整代碼
import java.sql.*;public class Mysql2{ public static Connection getConnection () throws SQLException, java.lang.ClassNotFoundException { //載入mysql的jdbc驅動 Class.forName("com.mysql.jdbc.Driver"); //取得串連的url和使用者名稱和密碼 String url = "jdbc:mysql://localhost:3306/mydate?useUnicode=true&characterEncoding=utf-8&useSSL=false"; String user = "root"; String passwd = "123456"; //建立與資料庫的執行個體串連 Connection con = DriverManager.getConnection(url, user,passwd); return con; } public static void main(String[] args) { try { Connection con = getConnection(); Statement sql = con.createStatement(); //如果同名資料庫存在就刪除 //sql.executeUpdate("insert person values(, 'liying',)"); //執行一個sql語句,產生一為student的表 sql.executeUpdate("create table student (id int(20) not null auto_int not nullt, name varchar() not null default 'name', sex char(2) not null default , primary key (id) ); "); sql.executeUpdate("insert into student values(321,'liying','w')"); sql.executeUpdate("insert into student values(123,'wangjiawu','w')"); sql.executeUpdate("insert into student values(132,'Baili','w')"); //查詢操作,用ResultSet類,返回結果 String query = "select * from student"; ResultSet result = sql.executeQuery(query); //顯示查詢內容 System.out.println("Student 表中的內容:"); System.out.println("---------------------------------"); System.out.println(" 序號" + " | " + "姓名" +" | "+ "性別"); System.out.println("--------------------------------"); //對查詢結果進行處理 while (result.next()) { int id = result.getInt("id"); String name = result.getString("username"); String mathsorce = result.getString("sex"); System.out.println(" |" + id + " |" + name + " |" + mathsorce); } sql.close();//關閉資料庫 con.close();//中斷連線 }catch (java.lang.ClassNotFoundException e){ System.out.println("Error"); }catch (SQLException ex) { System.err.println("SQLException: " + ex.getMessage()); } }}

 

 

 

 

 

  

 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.