① 通過java代碼如何實現對mysql資料庫進行創建新的資料庫的操作
1 import java.sql.Connection;
2 import java.sql.DriverManager;
3 import java.sql.ResultSet;
4 import java.sql.SQLException;
5 import java.sql.Statement;
6
7 public class CreateDataSource {
8
9 /**
10 * @param args
11 */
12 public static void main(String[] args) {
13 // TODO Auto-generated method stub
14 String database = "test2";
15 new CreateDataSource().getConn(database);
16 }
17
18 String mysqlDriver = "com.mysql.jdbc.Driver";
19 String url = "jdbc:mysql://localhost:3306/test1";
20 String newUrl = "jdbc:mysql://localhost:3306/";
21 String username = "root";
22 String password = "root";
23 Connection conn = null;
24 Connection newConn = null;
25
26 public Connection getConn(String database) {
27
28 try {
29 Class.forName(mysqlDriver);
30 } catch (ClassNotFoundException e) {
31 // TODO Auto-generated catch block
32 e.printStackTrace();
33 }
34 try {
35 String tableSql = "create table t_user (username varchar(50) not null primary key,"
36 + "password varchar(20) not null ); ";
37 String databaseSql = "create database " + database;
38
39 conn = DriverManager.getConnection(url, username, password);
40 Statement smt = conn.createStatement();
41 if (conn != null) {
42 System.out.println("資料庫連接成功!");
43
44 smt.executeUpdate(databaseSql);
45
46 newConn = DriverManager.getConnection(newUrl + database,
47 username, password);
48 if (newConn != null) {
49 System.out.println("已經連接到新創建的資料庫:" + database);
50
51 Statement newSmt = newConn.createStatement();
52 int i = newSmt.executeUpdate(tableSql);//DDL語句返回值為0;
53 if (i == 0) {
54 System.out.println(tableSql + "表已經創建成功!");
55 }
56 }
57 }
58
59 } catch (SQLException e1) {
60 // TODO Auto-generated catch block
61 e1.printStackTrace();
62 }
63 return conn;
64 }
65 }
② 如何用java實現mysql資料庫的導入導出
MySql導出資料庫的命令如下:
Sql代碼
mysqlmp -uusername -ppassword -hhost -Pport exportDatabaseName > exportPath
mysqlmp -uusername -ppassword -hhost -Pport exportDatabaseName > exportPath
利用Java調用命令窗口執行命令來進行MySql導入資料庫一般分三步走:
第一步:登錄Mysql資料庫,在登錄資料庫的時候也可以指定登錄到哪個資料庫,如果指定了則可以跳過第二步;
第二步:切換資料庫到需要導入的目標資料庫
第三步:利用命令開始導入
在進行導出的時候,需要注意命令語句的運行環境,如果已經將mysql安裝路徑下的bin加入到
系統的path變數中,那麼在導出的時候可以直接使用命令語句,否則,就需要在執行命令語句的
時候加上命令所在位置的路徑,即mysql安裝路徑想的bin下的mysqlmp命令。
③ Java如何連接MySQL資料庫進行操作
下面是一個從 mysql 資料庫獲取用戶信息的例子,可以參考一下:
importjava.sql.Connection;
importjava.sql.DriverManager;
importjava.sql.ResultSet;
importjava.sql.SQLException;
importjava.sql.Statement;
importjava.util.ArrayList;
importjava.util.List;
//用戶類,存儲單個用戶信息
classUser{
privateintid;
privateStringname;
publicUser(intid,Stringname){
this.id=id;
this.name=name;
}
publicintgetId(){
returnid;
}
publicvoidsetId(intid){
this.id=id;
}
publicStringgetName(){
returnname;
}
publicvoidsetName(Stringname){
this.name=name;
}
@Override
publicStringtoString(){
return"User[id="+id+",name="+name+"]";
}
}
publicclassDemo1{
publicstaticvoidmain(String[]args)throwsClassNotFoundException,SQLException{
//本例使用mysql資料庫,演示將資料庫test的tb_users表中的用戶信息
//放到List中
//載入數據驅動
Class.forName("com.mysql.jdbc.Driver");
//資料庫連接字元串,此例資料庫為test
Stringurl="jdbc:mysql://localhost:3306/test";
Stringuser="root"; //資料庫用戶名
Stringpassword=""; //資料庫密碼
//打開一個數據連接
Connectionconn=DriverManager.getConnection(url,user,password);
Statementstmt=conn.createStatement();
//獲取表tb_users所有用戶信息到結果集中
ResultSetrs=stmt.executeQuery("SELECTid,nameFROMtb_users");
//定義一個存放用戶信息的List
List<User>users=newArrayList<>();
//提取用戶信息,並將用戶信息放入List
while(rs.next()){
//獲取用戶ID
intid=rs.getInt(1);
//獲取用戶名
Stringname=rs.getString(2);
users.add(newUser(id,name));
}
rs.close();
stmt.close();
conn.close();
//顯示用戶信息
for(Useru:users){
System.out.println(u);
}
}
}
④ 怎麼在java中操作mysql資料庫
1.安裝好jre環境和和jdk,設置好環境變數,很基礎,網上教程很多;
2.安裝mysql資料庫,不用設置數據源和環境變數,只是安裝好就可以,具體過程見網上教程,有時候不好安裝,可能是因為之前安裝沒有卸載干凈等原因,多查一查怎麼弄,多試一試就成功了;
3.為了方便操作資料庫,為mysql安裝一個可視化界面Navicat,安裝過程超級簡單,使用也超級簡單,傻瓜操作;
4.怎麼連接java和mysql呢,這個搞了好久,網上下載一個壓縮包mysql-connector-java-5.0.8.zip,解壓,將其中的mysql-connector-java-5.0.8-bin.jar文件復制一份粘貼在C:\Program
Files\Java\jre7\lib\ext目錄下,也就是放在jre\lib\ext下就行;
5.接下來還要設置一次環境變數,第4步中的壓縮包解壓後,將解壓後文件中mysql-connector-java-5.0.8-bin.jar添加到環境變數classpath中;
⑤ 如何使用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());
}
⑥ 如何在Java程序中訪問mysql資料庫中的數據並進行簡單的操作
一、使用工具:java語言、Myeclipse。
二、操作步驟:
1、第一步:載入MySQL的JDBC的驅動
⑦ 如何在Java程序中訪問mysql資料庫中的數據並進行簡單的操作
import java.sql.*;
public class DBManager{
static Connection conn=null;
static{
System.out.println("in DBManager");
String dbName="ccrs";
try{
Class.forName("com.mysql.jdbc.Driver");
//配置數據源
String url="jdbc:mysql://192.168.1.2/"+ dbName +
"?useUnicode=true&characterEncoding=GB2312";
conn=DriverManager.getConnection(url,"root","admin");
}catch(Exception e){
System.out.println("Exception:"+e.getMessage());
}
}
public synchronized static Connection getConnection(){
Connection temp=null;
if(conn!=null){
temp=conn;
conn=null;
return temp;
}else{
return null;
}
}
public synchronized static void releaseConnection(Connection con){
conn=con;
}
public static void closeConn(){
try{
conn.close();
}catch(SQLException e){
System.out.println(e.getMessage());
}
}
}
你要注意的地方:dbName為資料庫名,你的mysql裡面的資料庫叫什麼,這個就為什麼,例如String dbName="yourDataBaseName";
Class.forName("com.mysql.jdbc.Driver"),這個就是你下的那個jar包,驅動
url="jdbc:mysql://localhost/"+ dbName +
"?useUnicode=true&characterEncoding=GB2312"; //localhost資料庫的機器名
conn=DriverManager.getConnection(url,"root","admin");
root是你資料庫的用戶名,admin為密碼,你看你自己的資料庫的用戶名密碼為多少,這里就為多少.
應該夠詳細了,還要注意的是你的驅動,即那個jar包你要放好,如果用eclipse的話導入你的工程屬性里.不然的話加入classpath.你不是jsp,所以不用放進你的lib里.
⑧ 怎麼用java實現mysql資料庫的導入導出
使用Java實現對MySql資料庫的導入與導出
packagecom.project.ajaxs;
importjava.io.BufferedReader;
importjava.io.FileInputStream;
importjava.io.FileOutputStream;
importjava.io.InputStream;
importjava.io.InputStreamReader;
importjava.io.OutputStream;
importjava.io.OutputStreamWriter;
importjava.util.Calendar;
importjava.util.Date;
publicclassBakMysql{
//main的方法,主要是我用於測試的,是想著取得CLASS的路徑,然後備份的文件寫在伺服器的類路徑下
publicstaticvoidmain(String[]args){
BakMysqlbk=newBakMysql();
bk.backup();
//bk.load();
}
//backup方法是備份資料庫到伺服器地址
publicvoidbackup(){
Calendarnow=Calendar.getInstance();
Stringname=now.getTime()+""+(now.getTime().getMonth()+1)+""+now.getTime().getDate();
Stringfilename=name.substring(24)+""+name.substring(11,13)+""+name.substring(14,16)+""+name.substring(17,19);
try{
StringfilePath="e:/project"+filename+".sql";
Runtimert=Runtime.getRuntime();
//調用mysql的cmd:
Processchild=rt.exec("C:/ProgramFiles/MySQL/MySQLServer5.0/bin/mysqlmp.exe-uroot-p8095longchunproject");//設置導出編碼為utf8。這里必須是utf8
//注意這一句,是指運行mysqlmp命令,後面跟的是登錄名和登錄的密碼,接著後面的是指備份的資料庫的名字,到此結束,以此生成一個執行的進程,取得此進程的輸出流到我們要備份的文件
//把進程執行中的控制台輸出信息寫入.sql文件,即生成了備份文件。註:如果不對控制台信息進行讀出,則會導致進程堵塞無法運行
InputStreamin=child.getInputStream();//控制台的輸出信息作為輸入流
InputStreamReaderxx=newInputStreamReader(in,"utf-8");//設置輸出流編碼為utf8。這里必須是utf8,否則從流中讀入的是亂碼
StringinStr;
StringBuffersb=newStringBuffer("");
StringoutStr;
//組合控制台輸出信息字元串
BufferedReaderbr=newBufferedReader(xx);
while((inStr=br.readLine())!=null){
sb.append(inStr+" ");
}
outStr=sb.toString();//備份出來的內容是一個字條串
//要用來做導入用的sql目標文件:
FileOutputStreamfout=newFileOutputStream(filePath);
OutputStreamWriterwriter=newOutputStreamWriter(fout,"utf8");
writer.write(outStr);//寫文件
//註:這里如果用緩沖方式寫入文件的話,會導致中文亂碼,用flush()方法則可以避免
writer.flush();
//別忘記關閉輸入輸出流
in.close();
xx.close();
br.close();
writer.close();
fout.close();
}catch(Exceptione){
e.printStackTrace();
}
}
//資料庫的導入
publicvoidload(){
try{
StringfPath="e:/aa.sql";
Runtimert=Runtime.getRuntime();
Processchild=rt.exec("C:/ProgramFiles/MySQL/MySQLServer5.0/bin/mysqladmin.exe-uroot-p8095longchuncreateproject");
Processchild1=rt.exec("C:/ProgramFiles/MySQL/MySQLServer5.0/bin/mysql.exe-uroot-p8095longchunproject");
OutputStreamout=child1.getOutputStream();//控制台的輸入信息作為輸出流
StringinStr;
StringBuffersb=newStringBuffer("");
StringoutStr;
BufferedReaderbr=newBufferedReader(newInputStreamReader(newFileInputStream(fPath),"utf-8"));
while((inStr=br.readLine())!=null){
sb.append(inStr+" ");
}
outStr=sb.toString();
OutputStreamWriterwriter=newOutputStreamWriter(out,"utf8");
writer.write(outStr);
//註:這里如果用緩沖方式寫入文件的話,會導致中文亂碼,用flush()方法則可以避免
writer.flush();
out.close();
br.close();
writer.close();
}catch(Exceptione){
e.printStackTrace();
}
}
}
原文來自http://www.cnblogs.com/anxz/archive/2012/11/19/2777782.html