我需要在现有数据库中创建一个新表以使用 Spring Boot 保存数据。
我创建了表并将我需要的所有权限授予特定用户(插入、更新、删除、选择)。
在我的项目中,我创建了实体:
@Data
@Entity
@NoArgsConstructor
@Table(schema = "Schema-Name", name = "Name-Of-Table")
public class test{
@Id
@GeneratedValue(strategy = GenerationType.Identity)
private Long id;
}
测试库:
public interface TestRepository extends CrudRepository<Test, Long> {}
如果我尝试创建一个 Test 实例Test test = new test();
并添加所有需要的参数,例如test.setId((long)1);
并执行它,我会得到一个ORA-00942: Table or View not found
异常。
如果我在 SQL Developer 中创建一个示例行,insert into
它可以正常工作。此外,如果我尝试通过@Autowired TestRepository
with读取代码中的数据,我testRepository.findById((long)1)
会收到正确的值。
为什么我不能“写入”表格?我能读,但我不能写。在写它说“找不到表或视图”)。当我查看表的当前“访问”时,我可以清楚地看到用户有权插入、更新、选择和删除。
感谢您的帮助
编辑:
表的 DDL
CREATE TABLE "SERVICE"."OTES_OE_TESTFALL"
( "ID" NUMBER(19,0) DEFAULT "SERVICE"."OTES_OE_TESTFALL_SEQUENCE".nextval NOT NULL ENABLE,
"TESTFALL_ID" NUMBER(19,0),
"OE_JSON" CLOB,
"EDCOM_ID" VARCHAR2(128 BYTE),
PRIMARY KEY ("ID")
USING INDEX PCTFREE 10 INITRANS 2 MAXTRANS 255 COMPUTE STATISTICS
STORAGE(INITIAL 65536 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1
BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
TABLESPACE "SERVICE_DATA" ENABLE
) SEGMENT CREATION IMMEDIATE
PCTFREE 10 PCTUSED 40 INITRANS 1 MAXTRANS 255
NOCOMPRESS LOGGING
STORAGE(INITIAL 65536 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1
BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
TABLESPACE "SERVICE_DATA" NO INMEMORY
LOB ("OE_JSON") STORE AS SECUREFILE (
TABLESPACE "SERVICE_DATA" ENABLE STORAGE IN ROW CHUNK 8192
NOCACHE LOGGING NOCOMPRESS KEEP_DUPLICATES
STORAGE(INITIAL 106496 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
PCTINCREASE 0
BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)) ;
GRANT DELETE ON "SERVICE"."OTES_OE_TESTFALL" TO "SERVICE";
GRANT INSERT ON "SERVICE"."OTES_OE_TESTFALL" TO "SERVICE";
GRANT SELECT ON "SERVICE"."OTES_OE_TESTFALL" TO "SERVICE";
GRANT SELECT ON "SERVICE"."OTES_OE_TESTFALL" TO "SERVICE_LESEN";
GRANT UPDATE ON "SERVICE"."OTES_OE_TESTFALL" TO "SERVICE";