⑴ java是怎麼連接mysql資料庫的
java連接mysql資料庫的步驟如下:
首先要下載mysql-connection-java-5.0.16-bin.jar這個jar包(版本不一致沒關系),然後在工程中導入該庫文件。
然後寫一個類(DBHelper)用來打開或關閉資料庫:
package com.hu.demo;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.SQLException;
public class DBHelper {
public static final String url = "jdbc:mysql://127.0.0.1/student";
public static final String name = "com.mysql.jdbc.Driver";
public static final String user = "root";
public static final String password = "root";
public Connection conn = null;
public PreparedStatement pst = null;
public DBHelper(String sql) {
try {
Class.forName(name);//指定連接類型
conn = DriverManager.getConnection(url, user, password);//獲取連接
pst = conn.prepareStatement(sql);//准備執行語句
} catch (Exception e) {
e.printStackTrace();
}
}
public void close() {
try {
this.conn.close();
this.pst.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
最後再寫一個Demo類來執行相關查詢操作:
package com.hu.demo;
import java.sql.ResultSet;
import java.sql.SQLException;
public class Demo {
static String sql = null;
static DBHelper db1 = null;
static ResultSet ret = null;
public static void main(String[] args) {
sql = "select *from stuinfo";//SQL語句
db1 = new DBHelper(sql);//創建DBHelper對象
try {
ret = db1.pst.executeQuery();//執行語句,得到結果集
while (ret.next()) {
String uid = ret.getString(1);
String ufname = ret.getString(2);
String ulname = ret.getString(3);
String udate = ret.getString(4);
System.out.println(uid + "\t" + ufname + "\t" + ulname + "\t" + udate );
}//顯示數據
ret.close();
db1.close();//關閉連接
} catch (SQLException e) {
e.printStackTrace();
}
}
}
這樣就完成了mysql資料庫的連接了。
⑵ 如何用java創建mysql資料庫
JDBC連接資料庫
•創建一個以JDBC連接資料庫的程序,包含7個步驟:
1、載入JDBC驅動程序:
在連接資料庫之前,首先要載入想要連接的資料庫的驅動到JVM(Java虛擬機),
這通過java.lang.Class類的靜態方法forName(String className)實現。
例如:
try{
//載入MySql的驅動類
Class.forName("com.mysql.jdbc.Driver") ;
}catch(ClassNotFoundException e){
System.out.println("找不到驅動程序類 ,載入驅動失敗!");
e.printStackTrace() ;
}
成功載入後,會將Driver類的實例注冊到DriverManager類中。
2、提供JDBC連接的URL
•連接URL定義了連接資料庫時的協議、子協議、數據源標識。
•書寫形式:協議:子協議:數據源標識
協議:在JDBC中總是以jdbc開始
子協議:是橋連接的驅動程序或是資料庫管理系統名稱。
數據源標識:標記找到資料庫來源的地址與連接埠。
例如:(MySql的連接URL)
jdbc:mysql:
//localhost:3306/test?useUnicode=true&characterEncoding=gbk ;
useUnicode=true:表示使用Unicode字元集。如果characterEncoding設置為
gb2312或GBK,本參數必須設置為true 。characterEncoding=gbk:字元編碼方式。
3、創建資料庫的連接
•要連接資料庫,需要向java.sql.DriverManager請求並獲得Connection對象,
該對象就代表一個資料庫的連接。
•使用DriverManager的getConnectin(String url , String username ,
String password )方法傳入指定的欲連接的資料庫的路徑、資料庫的用戶名和
密碼來獲得。
例如:
//連接MySql資料庫,用戶名和密碼都是root
String url = "jdbc:mysql://localhost:3306/test" ;
String username = "root" ;
String password = "root" ;
try{
Connection con =
DriverManager.getConnection(url , username , password ) ;
}catch(SQLException se){
System.out.println("資料庫連接失敗!");
se.printStackTrace() ;
}
4、創建一個Statement
•要執行SQL語句,必須獲得java.sql.Statement實例,Statement實例分為以下3
種類型:
1、執行靜態SQL語句。通常通過Statement實例實現。
2、執行動態SQL語句。通常通過PreparedStatement實例實現。
3、執行資料庫存儲過程。通常通過CallableStatement實例實現。
具體的實現方式:
Statement stmt = con.createStatement() ;
PreparedStatement pstmt = con.prepareStatement(sql) ;
CallableStatement cstmt =
con.prepareCall("{CALL demoSp(? , ?)}") ;
⑶ Java 中結合Sql查詢Mysql資料庫
select distinct user_name from userTable --找出用戶名不同的數據
⑷ java程序中sql語句查詢不到結果,但是資料庫中卻可以直接查詢(mysql)
mysql的話有可能是字元集的問題。查看下資料庫鏈接配置?
一般使用jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=UTF-8
⑸ 用java怎麼連接到mysql資料庫
當然,首先要安裝有JDK(一般是JDK1.5.X)。然後安裝MySQL,這些都比較簡單,具體過程就不說了。配置好這兩個環境後,下載JDBC驅動mysql-connector-java-5.0.5.zip(這個是最新版的)。然後將其解壓縮到任一目錄。我是解壓到D盤,然後將其目錄下的mysql-connector-java-5.0.5-bin.jar加到classpath里,具體如下:「我的電腦」-> 「屬性」 -> 「高級」 -> 「環境變數」,在系統變數那裡編輯classpath,將D:\mysql-connector-java-5.0.5\mysql-connector-java-5.0.5-bin.jar加到最後,在加這個字元串前要加「;」,以與前一個classpath區分開。然後確定。
環境配置好了,很簡單。現在,先配置MySQL,設其用戶名為「root」,密碼為「root」。在命令行或用一個SQL的前端軟體創建Database。
我是用SQLyog的前端軟體來創建Database的。
先創建資料庫:
CREATE DATABASE SCUTCS;
接著,創建表:
CREATE TABLE STUDENT
(
SNO CHAR(7) NOT NULL,
SNAME VARCHAR(8) NOT NULL,
SEX CHAR(2) NOT NULL,
BDATE DATE NOT NULL,
HEIGHT DEC(5,2) DEFAULT 000.00,
PRIMARY KEY(SNO)
);
然後插入數據,可以用SQL語句insert into <表名> values (value1, value2, ...);
也可以用SQLyog來操作
好了,創建好了。
下面,我們來編寫.java文件來演示一下如何訪問MySQL資料庫。
import java.sql.*;
public class JDBCTest {
public static void main(String[] args){
// 驅動程序名
String driver = "com.mysql.jdbc.Driver";
// URL指向要訪問的資料庫名scutcs
String url = "jdbc:mysql://127.0.0.1:3306/scutcs";
// MySQL配置時的用戶名
String user = "root";
// MySQL配置時的密碼
String password = "root";
try {
// 載入驅動程序
Class.forName(driver);
// 連續資料庫
Connection conn = DriverManager.getConnection(url, user, password);
if(!conn.isClosed())
System.out.println("Succeeded connecting to the Database!");
// statement用來執行SQL語句
Statement statement = conn.createStatement();
// 要執行的SQL語句
String sql = "select * from student";
// 結果集
ResultSet rs = statement.executeQuery(sql);
System.out.println("-----------------");
System.out.println("執行結果如下所示:");
System.out.println("-----------------");
System.out.println(" 學號" + "\t" + " 姓名");
System.out.println("-----------------");
String name = null;
while(rs.next()) {
// 選擇sname這列數據
name = rs.getString("sname");
/* 何問起 hovertree.com */
// 首先使用ISO-8859-1字元集將name解碼為位元組序列並將結果存儲新的位元組數組中。
// 然後使用GB2312字元集解碼指定的位元組數組
name = new String(name.getBytes("ISO-8859-1"),"GB2312");
// 輸出結果
System.out.println(rs.getString("sno") + "\t" + name);
}
rs.close();
conn.close();
} catch(ClassNotFoundException e) {
System.out.println("Sorry,can`t find the Driver!");
e.printStackTrace();
} catch(SQLException e) {
e.printStackTrace();
} catch(Exception e) {
e.printStackTrace();
}
}
}
接下來我們運行一下看下效果:
D:\testjdbc>javac JDBCTest.java
D:\testjdbc>java JDBCTest
Succeeded connecting to the Database!
-----------------------
執行結果如下所示:
-----------------------
學號 姓名
-----------------------
0104421 周遠行
0208123 王義平
0209120 何問起
0309119 李 維
0309203 歐陽美林
0309226 柯樂義
哈哈,成功啦
⑹ 如何在Java程序中訪問mysql資料庫中的數據並進行簡單的操作
創建一個javaProject,並輸入如下java代碼:
package link;import java.sql.*;/*** 使用JDBC連接資料庫MySQL的過程* DataBase:fuck, table:person;* 使用myeclipse對mysql資料庫進行增刪改查的基本操作。*/public class JDBCTest {public static Connection getConnection() throws SQLException,java.lang.ClassNotFoundException{//第一步:載入MySQL的JDBC的驅動Class.forName("com.mysql.jdbc.Driver");//取得連接的url,能訪問MySQL資料庫的用戶名,密碼;jsj:資料庫名String url = "jdbc:mysql://localhost:/fuck";String username = "root";String password = "";//第二步:創建與MySQL資料庫的連接類的實例Connection con = DriverManager.getConnection(url, username, password);return con;}public static void main(String args[]) {try{//第三步:獲取連接類實例con,用con創建Statement對象類實例 sql_statementConnection con = getConnection();Statement sql_statement = con.createStatement();//如果同名資料庫存在,刪除//sql_statement.executeUpdate("drop table if exists student");//執行了一個sql語句生成了一個名為student的表//sql_statement.executeUpdate("create table student (id int not null auto_increment, name varchar() not null default 'name', math int not null default , primary key (id) ); ");//向person表中插入數據sql_statement.executeUpdate("insert person values(, 'liying', )");sql_statement.executeUpdate("insert person values(, 'jiangshan', )");sql_statement.executeUpdate("insert person values(, 'wangjiawu', )");sql_statement.executeUpdate("insert person values(, 'changfeng', )");//第四步:執行查詢,用ResultSet類的對象,返回查詢的結果String query = "select * from person";ResultSet result = sql_statement.executeQuery(query);//顯示數據中person表中的內容:System.out.println("person表中的數據如下:");System.out.println("------------------------");System.out.println("序號" + " " + "姓名" + " " + "分數");System.out.println("------------------------");//對獲得的查詢結果進行處理,對Result類的對象進行操作while (result.next()){int number = result.getInt("number");String name = result.getString("name");String mathsorce = result.getString("mathsorce");//取得資料庫中的數據System.out.println(" " + number + " " + name + " " + mathsorce);}//關閉連接和聲明sql_statement.close();con.close();} catch(java.lang.ClassNotFoundException e) {System.err.print("ClassNotFoundException");System.err.println(e.getMessage());} catch (SQLException ex) {System.err.println("SQLException: " + ex.getMessage());}}}注意有幾個地方是你需要修改的。
如下圖中的url和賬號,密碼需要與你自己的相一致。
⑺ 如何使用Java訪問MySQL資料庫
第1步 獲取Java與MySQL的連接器
第2步 將下載的包存放在自己機器上jdk安裝目錄下面的jre目錄下面的lib目錄下面的ext目錄中,在程序中導入與資料庫操作相關的對象
import java.sql.Connection; //導入資料庫連接對象
import java.sql.DriverManager; //導入資料庫驅動管理對象
import java.sql.ResultSet; //導入數據記錄集對象
import java.sql.SQLException; //導入數據SQL操作異常對象
import java.sql.Statement; //導入SQL操作介面對象
第3步:在程序中寫入如下內容
String url; //連接資料庫的字元串
String sql; //執行數據sql查詢操作的字元串
Connection conn; //資料庫連接變數
Statement st; //資料庫操作對象
ResultSet rs; //數據記錄集對象
url = "jdbc:mysql://localhost:3306/test?user=root&password="; //在程序中只要修改這句,就可以實現資料庫連接
try {
conn = DriverManager.getConnection(url);
st = conn.createStatement();
sql = "select * from test"; //只要修改這句,就可以實現各種查詢操作
rs=st.executeQuery(sql); //執行數據查詢
while(rs.next())
{
System.out.println(rs.getString(1)); //獲得數據表test中第1個欄位的數據,該欄位為字元串類型
System.out.println(rs.getString(2)); //獲得數據表test中第2個欄位的數據,該欄位為字元串類型
}
rs.close(); //關閉數據記錄集
conn.close(); //關閉資料庫連接
} catch (SQLException e) {
System.out.println("Error:"+e.toString()+e.getMessage());
}
⑻ 怎樣通過XML和java實現SQL和MYSQL的異構數據交換有代碼的做好,先謝謝啦!
SAXReader
reader
=
new
SAXReader();
Document
doc=reader.read(new
File("src/Cinema.xml"));
Element
eleRoot=doc.getRootElement();
for(Iterator
its=eleRoot.elementIterator();its.hasNext();){
Element
eleCount=(Element)its.next();
Iterator
it=eleCount.elementIterator();
while(it.hasNext()){
Element
eleName=(Element)it.next();
}
用這些代碼可以實現從XML中讀取數據
然後建立連接用一個實體類用來臨時存放SQL數據把
用List<News>存放
Class.forName("oracle.jdbc.OracleDriver");
String
url="jdbc:oracle:thin:@192.168.0.200:1521:tarena";
Connection
con=DriverManager.getConnection(url,"hsd1103","hsd1103");
String
str="insert
into
news
value(?,?,?,?,?)"//問號是對應下面你所要傳遞的值和
你SQL中的欄位值對應
News
news=new
News();
PreparedStatement
stmt=PreparedStatement
pstm
=
con.prepareStatement();
//把xml中的數據放置到sql中
stmt.setInt(1,news.getID())
stmt.setString(2,news.getName);
stmt.setString(3,news.getAcc());
.
.
.
按照這樣的方式些就可以了我用的是oracle
⑼ 做Java資料庫學SQL還是MySQL
這個問題讓我看的有點迷糊!
SQL是資料庫的通用標准,雖然各個數據的sql語句不同,但是都是大同小異,萬變不離其宗。
我可不可以這樣理解樓主的問題?樓主是想知道在做java項目時經常用到的資料庫有哪些?
一般情況下,java項目用到的資料庫是mysql和oracle,一般處於學習目的時,我推薦使用mysql,首先它體積小、完全免費、功能強大、安裝和刪除過程都比較簡單。僅僅代表個人觀點.
⑽ java中連接MySQL資料庫的幾種方式
Java要連接資料庫,那麼首先你必須安裝mysql資料庫。
安裝好mysql之後,安裝JDK了。
安裝好JDK之後,就是安裝Eclipse了,要支持JDK版本,Eclipse安裝的時候會自動去找JDK安裝位置的,解壓版的Eclipse,就要配置eclipse.ini文件了,將對應的JDK配置好,這些已經准備就緒的時候,就到mysql中創建資料庫和表。
先創建資料庫:
CREATE DATABASE SCUTCS;
接著,創建表:
CREATE TABLE STUDENT
(
SNO CHAR(7) NOT NULL,
SNAME VARCHAR(8) NOT NULL,
SEX CHAR(2) NOT NULL,
BDATE DATE NOT NULL,
HEIGHT DEC(5,2) DEFAULT 000.00,
PRIMARY KEY(SNO)
);
然後插入數據,可以用SQL語句insert into <表名> values (value1, value2, ...);
編寫.java文件來演示一下如何訪問MySQL資料庫。
import java.sql.*;
public class JDBCTest {
public static void main(String[] args){
// 驅動程序名 String driver = "com.mysql.jdbc.Driver";
// URL指向要訪問的資料庫名scutcs String url = "jdbc:mysql://127.0.0.1:3306/scutcs";
// MySQL配置時的用戶名 String user = "root"; // MySQL配置時的密碼 String password = "root";
try { // 載入驅動程序 Class.forName(driver);
// 連續資料庫 Connection conn = DriverManager.getConnection(url, user, password);
if(!conn.isClosed()) System.out.println("Succeeded connecting to the Database!");
// statement用來執行SQL語句 Statement statement = conn.createStatement();
// 要執行的SQL語句 String sql = "select * from student";
// 結果集 ResultSet rs = statement.executeQuery(sql);
while(rs.next()) // 選擇sname這列數據 name = rs.getString("sname
// 輸出結果 System.out.println(rs.getString("sno") + " " + name); }
rs.close(); conn.close();
} catch(ClassNotFoundException e) {
System.out.println("Sorry,can`t find the Driver!"); e.printStackTrace();
} catch(SQLException e) {
e.printStackTrace();
} catch(Exception e) {
e.printStackTrace();
}}}