JDBC-MySql基礎操作詳解
如何使用IJ idea進行一些JDBC的基礎操作呢?對此我總結了一下。
一:步驟
1,匯入驅動jar包。
2,註冊驅動。
3,獲取資料庫連線物件 Connection。
4,定義sql
5,獲取執行sql語句的物件Statement。
6,執行sql,接收返回結果
7,處理結果。
8,釋放資源。
那麼一開始,我們需要建立一個專案,這個建立專案就不用詳細說了。在建立完專案之後。我們需要匯入一個jar包,我用的是 mysql-connector-java-8.0.16這個版本的jar包,在專案中新建一個資料夾,然後找到你下載的jar包所在的資料夾,最後再匯入一下就ok了。 注意:當你新建完資料夾並且把jar包匯入這個資料夾之後,別忘了右鍵這個資料夾, 點選Add As Library 這個選項。
第二步開始註冊驅動:
Class.forName("com.mysql.jdbc.Driver");
如果報錯的話, 那麼寫成
Class.forName("com.mysql.cj.jdbc.Driver");
第三步獲取資料庫連線物件:
Connection con = DriverManager.getConnection("jdbc:mysql://localhost:3306/xxxxxxx?serverTimezone=UTC", "xxxx", "xxxxxxxx");
注意 ,這裡第一個xxxxxx是你的表的名字, 第二個xxxx是你的使用者名稱root, 第三個是你的密碼。
第四部開始定義sql語句
String sql = "update departments set xxxxxx where xxxxxx";
注意,這裡的xxxx根據你自己的資料庫的元素所確定。
第五步,獲取執行sql的物件
Statement stmt = con.createStatement();
第六步, 執行sql
int count = stmt.executeUpdate(sql);
最後幾步:輸出和釋放資源
System.out.println(count);
stmt.close();
con.close();
完整程式碼;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.sql.Statement;
/**
* 使用JDBC連線MySQL資料庫
*
* @author lloyd
*/
public class JDBC {
public static void main(String[] args) throws Exception {
Class.forName("com.mysql.cj.jdbc.Driver");
Connection con = DriverManager.getConnection("jdbc:mysql://localhost:3306/myemployees?serverTimezone=UTC", "root", "xiaominghaotu305");
String sql = "update departments set manager_id = 20 where department_id = 30";
Statement stmt = con.createStatement();
int count = stmt.executeUpdate(sql);
System.out.println(count);
stmt.close();
con.close();
}
}
剛剛在java中連線Mysql資料庫的嘗試中,程式報出瞭如下的錯誤:
Exception in thread “main” java.sql.SQLException: The server time zone value ‘Öйú±ê׼ʱ¼ä’ is unrecognized or represents more than one time zone. You must configure either the server or JDBC driver (via the serverTimezone configuration property) to use a more specifc time zone value if you want to utilize time zone support.
仔細閱讀,發現是與時間設定相關,仔細研究後發現,是因為新版的Mysql中的時區預設設定與本地時區之間是不同的,因此會報錯。
由此,解決方法即為修改時區設定即可,可以在連線資料庫的url的最後新增這樣一段程式碼?serverTimezone=UTC,就可以解決問題了。
如,我原先的程式碼為:
Connection connection = DriverManager.getConnection(“jdbc:mysql://localhost/javabook”, “xxx”, “xxxx”);
System.out.println(“Database connected!”);
修改後為:
Connection connection = DriverManager.getConnection(“jdbc:mysql://localhost/javabook?serverTimezone=UTC”, “lenfranky”, “tiger”);
System.out.println(“Database connected!”);
執行結果:
Database connected!
相關文章
- MongoDB資料庫操作詳解:基礎篇MongoDB資料庫
- OpenGL 基礎光照詳解
- JSON基礎使用詳解JSON
- Linux基礎命令詳解Linux
- java基礎詳解-集合Java
- Git基礎知識詳解Git
- Java基礎-泛型詳解Java泛型
- Scrapy基礎(二): 使用詳解
- 【iOS基礎】KVC / KVO詳解iOS
- socket基礎詳解 小白白
- Redis基礎知識詳解Redis
- java繼承基礎詳解Java繼承
- HotDB 基礎架構詳解架構
- Python基礎知識詳解 從入門到精通(六)檔案操作Python
- Android Retrofit 2.5.0使用基礎詳解Android
- Java基礎-內部類詳解Java
- Java 基礎 01-String 詳解Java
- Java基礎1-String詳解Java
- java基礎之:迭代器詳解Java
- MySQL資料庫基礎詳解MySql資料庫
- Flutter 基礎Widgets之AppBar詳解FlutterAPP
- 音訊編碼基礎詳解音訊
- 【死磕NIO】— NIO基礎詳解
- BSN-DDC基礎網路詳解(一):基礎介紹
- Redis基礎操作Redis
- MongoDB基礎操作MongoDB
- elasticsearch 基礎操作Elasticsearch
- python基礎操作Python
- linux基礎操作Linux
- Go 語言基礎之 Context 詳解GoContext
- IPv6基礎知識詳解
- Python基礎之七:編碼詳解Python
- Flutter 基礎Widgets之容器Container詳解FlutterAI
- 詳解javascript拖拽(一)基礎介紹JavaScript
- Java基礎:throw和throws的詳解Java
- node基礎(4)---Stream的用法詳解
- 深入mysql基礎知識的詳解MySql
- 『心善淵』Selenium3.0基礎 — 4、Selenium基礎元素定位詳解