📲 ORM을 활용한 U.D
Update
app.put('/users', async (req, res) => {
	const { id } = req.query;
	const { email, password } = req.body;
	
  const updateUser = await prisma.user.update({
	  where: {
			id,
		},
		data: {
			email: email,
			password: password,
		}
  });
  res.json(updateUser);
});
- 업데이트는 PUT 메서드를 사용합니다.
 
- where에는 조건을 넣습니다. 위 코드에서는 id가 request에서 보내주는 id와 동일했을 때입니다.
 
- data에는 새로 업데이트할 column 명을 객체 형태로 넣고 새로운 값을 수정합니다.
 
- 이외에도 
updateMany, upsert 등의 메서드가 있습니다. (Ex. Prisma Client API (Reference) ) 
Delete
app.delete('/users', async (req, res) => {
	const { id } = req.query;
	
  const deletedUserCount = await prisma.user.deleteMany({
	  where: { id }
  });
  res.json(deletedUserCount);
});
⭐️ Raw Query
$queryRaw 메서드를 이용하여 위의 예시를 SQL문으로만 구현한 코드입니다. (생 쿼리)
Update
app.put('/users', async (req, res) => {
	const { id } = req.query;
	const { email, password } = req.body;
	
  const updateUser = await prisma.$queryRaw`
    UPDATE users
    SET email=${email}, password=${password}
    WHERE id=${id};
`;
  res.json(updateUser);
});
- UPDATE, SET, WHERE 문을 사용합니다.
 
- UPDATE 뒤에는 업데이트 할 테이블 이름을, SET 뒤에는 업데이트 할 칼럼과 값을 입력합니다.
 
- WHERE문을 입력하지 않으면 모든 데이터가 업데이트 될 수 있습니다! (주의)
 
Delete
app.delete('/users', async (req, res) => {
	const { id } = req.query;
  const deletedUserCount = await prisma.$queryRaw`
		DELETE FROM users
		WHERE id=${id}
	`
  res.json(deletedUserCount);
});
- DELETE FROM, WHERE 문을 사용합니다.
 
- Update와 마찬가지로 WHERE문을 사용하지 않으면 테이블의 모든 데이터가 지워질 수 있으니 주의해 주세요!