我有两个表#include <stdio.h>
#include <stdlib.h>
#define DIM_MAX 9
int d = 3;
void changeArray(int d, int *array[d]);
int main()
{
//alocate array of 'd' colummns and 'd' row using malloc using array of pointers
int *array[DIM_MAX] = {0};
for(int count = 0; count < d; count++)
{
array[count] = (int *)malloc(d*sizeof(int *));
}
/* Call changeArray function */
changeArray(d, array);
for(int i = 0; i < d; i++)
{
for(int j = 0; j < d; j++)
{
printf("%d ", array[i][j]);
}
printf("\n");
}
for(int count = 0; count < d; count++)
{
free(array[count]);
}
return 0;
}
void changeArray(int n, int *array[d])
{
for(int i =0; i < n; i++)
{
for(int j = 0; j < n; j++)
{
array[i][j] = i*j;
}
}
return;
}
和Employee
Address
关系。
one-to-one
我正在使用Spring Data REST。
Q1。我想公开一个数据存储库方法来更新CREATE TABLE EMPLOYEE(
ID BIGINT PRIMARY KEY NOT NULL,
EMP_NAME VARCHAR(50) NOT NULL,
PHONE_ID BIGINT,
DELETED BOOLEAN NOT NULL DEFAULT FALSE,
CONSTRAINT CONSTRAINT1 FOREIGN KEY (PHONE_ID)
REFERENCES PHONE (ID)
)
CREATE TABLE PHONE(
ID BIGINT PRIMARY KEY NOT NULL,
PH_NUMBER VARCHAR(20) NOT NULL,
DELETED BOOLEAN NOT NULL DEFAULT FALSE,
)
和“PHONE”的DELETED
列。
如下所示:
EMPLOYEE
Q2。使用Spring数据REST甚至可以做到这一点。
请注意:我不想使用原生查询,即TestRepository implements CrudRepository{
@Query(value="update both table query", native=false)
public void updateBoth();
}
答案 0 :(得分:3)
您必须在正确使用框架和过度使用框架之间找到平衡。
Spring Data REST是将您的存储库暴露给HTTP,但您无法使用它来解决所有问题。
这里正确的方法是创建一个自定义控制器,并通过适当的事务管理实现所需的功能,以获得所需的数据完整性。