Oracle數(shù)據(jù)庫(kù)基本操作及Spring整合Oracle數(shù)據(jù)庫(kù)詳解
一、Oracle數(shù)據(jù)庫(kù)介紹
1、Oracle: 中文意思:神諭 是由美國(guó)Oracle公司開(kāi)發(fā)的一個(gè)面向?qū)ο蟆㈥P(guān)系型大型數(shù)據(jù)庫(kù)。
版本:2.0 3.0 ..... 9i(Internet) 10g(g:網(wǎng)格) 11g 12C
2、Oracle數(shù)據(jù)庫(kù)的特點(diǎn)
大型的、安全性高、費(fèi)用高
3、Oracle數(shù)據(jù)庫(kù)的基本操作(權(quán)限)
默認(rèn)三個(gè)角色:Sys (超級(jí)) System(DBA:數(shù)據(jù)庫(kù)管理員) scott(學(xué)習(xí)賬號(hào)) tiger
所有的操作都必須有權(quán)限:System
Sql:
DDL: 數(shù)據(jù)定義語(yǔ)言(create drop alter)
DCL: 數(shù)據(jù)控制語(yǔ)言(Grant:授權(quán) Revoke:收回 Deny:拒絕)
例如:授予某個(gè)用戶的select權(quán)限:
Grant select on 表名 to 用戶 Grant select,update,delete on 表名 to 用戶 Revoke select on 表名 from 用戶
DML:數(shù)據(jù)操作語(yǔ)言:update delete insert
DQL: 數(shù)據(jù)查詢語(yǔ)言: select
TCL: 事務(wù)控制語(yǔ)言: commit rollback
創(chuàng)建表空間
刪除表空間
創(chuàng)建用戶
授權(quán):授權(quán)abc用戶可以連接(connect)且操作資源(resouce)
二、SpringBoot整合oracle
導(dǎo)入依賴
<?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>com.example</groupId> <artifactId>oracle-test</artifactId> <version>0.0.1-SNAPSHOT</version> <name>oracle-test</name> <description>oracle-test</description> <properties> <java.version>17</java.version> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding> <spring-boot.version>3.0.2</spring-boot.version> </properties> <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-jpa</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <!--解決中文亂碼問(wèn)題--> <dependency> <groupId>cn.easyproject</groupId> <artifactId>orai18n</artifactId> <version>12.1.0.2.0</version> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-devtools</artifactId> <scope>runtime</scope> <optional>true</optional> </dependency> <dependency> <groupId>com.oracle.database.jdbc</groupId> <artifactId>ojdbc8</artifactId> <scope>runtime</scope> </dependency> <dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> <optional>true</optional> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> <scope>test</scope> </dependency> </dependencies> <dependencyManagement> <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-dependencies</artifactId> <version>${spring-boot.version}</version> <type>pom</type> <scope>import</scope> </dependency> </dependencies> </dependencyManagement> <build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <version>3.8.1</version> <configuration> <source>17</source> <target>17</target> <encoding>UTF-8</encoding> </configuration> </plugin> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> <version>${spring-boot.version}</version> <configuration> <mainClass>com.song.OracleTestApplication</mainClass> <skip>true</skip> </configuration> <executions> <execution> <id>repackage</id> <goals> <goal>repackage</goal> </goals> </execution> </executions> </plugin> </plugins> </build> </project>
配置文件
spring: datasource: username: abc password: abc123 driver-class-name: oracle.jdbc.driver.OracleDriver url: jdbc:oracle:thin:@localhost:1521:orcl jpa: show-sql: true hibernate: ddl-auto: update database: oracle
實(shí)體類
package com.damo.pojo; import jakarta.persistence.*; import lombok.Data; /** * @author Damo * @date 2024/10/24 0018 * @time 16:02 */ @Entity @Table(name = "t_book") @Data public class Book { @Id @GeneratedValue(strategy = GenerationType.SEQUENCE) private Integer id; private String title; private String author; private Integer price; }
Dao
public interface BookDao extends JpaRepository<Book,Integer> { }
測(cè)試
package com.damo; import com.damo.dao.BookDao; import com.damo.pojo.Book; import jakarta.annotation.Resource; import org.junit.jupiter.api.Test; import org.springframework.boot.test.context.SpringBootTest; @SpringBootTest class OracleTestApplicationTests { @Resource private BookDao bookService; @Test void contextLoads() { //新增 Book book =new Book(); book.setAuthor("zhangs"); book.setPrice(100); book.setTitle("測(cè)試"); this.bookService.save(book); } @Test public void list(){ //查詢列表 this.bookService.findAll().forEach(System.out::println); } @Test public void delete(){ //刪除 this.bookService.deleteById(1); } @Test public void update(){ //修改 Book book = this.bookService.findById(1).get(); book.setTitle("xxx"); book.setPrice(200); this.bookService.saveAndFlush(book); } }
總結(jié)
到此這篇關(guān)于Oracle數(shù)據(jù)庫(kù)基本操作及Spring整合Oracle數(shù)據(jù)庫(kù)的文章就介紹到這了,更多相關(guān)Spring整合Oracle內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Linux環(huán)境下Oracle數(shù)據(jù)庫(kù)重啟詳細(xì)步驟
這篇文章主要給大家介紹了關(guān)于Linux環(huán)境下Oracle數(shù)據(jù)庫(kù)重啟的詳細(xì)步驟,oracle在linux下重啟,有多種方式可選擇,文中通過(guò)代碼介紹的非常詳細(xì),需要的朋友可以參考下2024-06-06自動(dòng)備份Oracle數(shù)據(jù)庫(kù)
自動(dòng)備份Oracle數(shù)據(jù)庫(kù)...2007-03-03詳解如何刪除Oracle數(shù)據(jù)庫(kù)臨時(shí)表空間
因生產(chǎn)環(huán)境磁盤空間不足,影響了業(yè)務(wù),短時(shí)間內(nèi)無(wú)法擴(kuò)容磁盤,經(jīng)過(guò)排查發(fā)現(xiàn),可以釋放temp臨時(shí)表空間來(lái)臨時(shí)釋放部分空間,本文記錄了如何釋放臨時(shí)表空間的詳細(xì)操作步驟,需要的朋友可以參考下2024-03-03Oracle用戶自定義異常實(shí)現(xiàn)過(guò)程解析
這篇文章主要介紹了Oracle用戶自定義異常實(shí)現(xiàn)過(guò)程解析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-09-09Oracle數(shù)據(jù)庫(kù)正則表達(dá)式純數(shù)字例子
正則表達(dá)式已經(jīng)在很多軟件中得到廣泛的應(yīng)用,包括*nix(Linux, Unix等),HP等操作系統(tǒng),PHP,C#,Java等開(kāi)發(fā)環(huán)境,這篇文章主要給大家介紹了關(guān)于Oracle數(shù)據(jù)庫(kù)正則表達(dá)式純數(shù)字的相關(guān)資料,需要的朋友可以參考下2024-08-08