Oracle數(shù)據(jù)庫基本操作及Spring整合Oracle數(shù)據(jù)庫詳解
一、Oracle數(shù)據(jù)庫介紹
1、Oracle: 中文意思:神諭 是由美國Oracle公司開發(fā)的一個面向?qū)ο蟆㈥P(guān)系型大型數(shù)據(jù)庫。
版本:2.0 3.0 ..... 9i(Internet) 10g(g:網(wǎng)格) 11g 12C
2、Oracle數(shù)據(jù)庫的特點(diǎn)
大型的、安全性高、費(fèi)用高
3、Oracle數(shù)據(jù)庫的基本操作(權(quán)限)
默認(rèn)三個角色:Sys (超級) System(DBA:數(shù)據(jù)庫管理員) scott(學(xué)習(xí)賬號) tiger
所有的操作都必須有權(quán)限:System
Sql:
DDL: 數(shù)據(jù)定義語言(create drop alter)
DCL: 數(shù)據(jù)控制語言(Grant:授權(quán) Revoke:收回 Deny:拒絕)
例如:授予某個用戶的select權(quán)限:
Grant select on 表名 to 用戶 Grant select,update,delete on 表名 to 用戶 Revoke select on 表名 from 用戶
DML:數(shù)據(jù)操作語言:update delete insert
DQL: 數(shù)據(jù)查詢語言: select
TCL: 事務(wù)控制語言: 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> <!--解決中文亂碼問題--> <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
實體類
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> { }
測試
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("測試"); 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ù)庫基本操作及Spring整合Oracle數(shù)據(jù)庫的文章就介紹到這了,更多相關(guān)Spring整合Oracle內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Linux環(huán)境下Oracle數(shù)據(jù)庫重啟詳細(xì)步驟
這篇文章主要給大家介紹了關(guān)于Linux環(huán)境下Oracle數(shù)據(jù)庫重啟的詳細(xì)步驟,oracle在linux下重啟,有多種方式可選擇,文中通過代碼介紹的非常詳細(xì),需要的朋友可以參考下2024-06-06Oracle數(shù)據(jù)庫正則表達(dá)式純數(shù)字例子
正則表達(dá)式已經(jīng)在很多軟件中得到廣泛的應(yīng)用,包括*nix(Linux, Unix等),HP等操作系統(tǒng),PHP,C#,Java等開發(fā)環(huán)境,這篇文章主要給大家介紹了關(guān)于Oracle數(shù)據(jù)庫正則表達(dá)式純數(shù)字的相關(guān)資料,需要的朋友可以參考下2024-08-08