> For the complete documentation index, see [llms.txt](https://docs.waveon.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.waveon.io/guides/undefined.md).

# 데이터 다루기 개요

Waveon에서 데이터를 저장하고 관리하는 방법입니다.

***

### 이 섹션에서 다루는 내용

<table data-view="cards"><thead><tr><th></th><th></th><th data-hidden data-card-target data-type="content-ref"></th></tr></thead><tbody><tr><td><strong>Data Storage Basics</strong></td><td>데이터 저장 기본 개념</td><td></td></tr><tr><td><strong>CRUD Operations</strong></td><td>생성, 조회, 수정, 삭제</td><td></td></tr><tr><td><strong>Filtering &#x26; Sorting</strong></td><td>데이터 검색, 필터, 정렬</td><td></td></tr></tbody></table>

***

### 데이터 저장 방식

#### 기본 (메모리 저장)

AI가 처음 앱을 생성하면 데이터는 **메모리에만** 저장됩니다.

* 새로고침하면 데이터 사라짐
* 테스트용으로만 사용

#### 서버 저장

데이터를 영구 저장하려면 AI에게 요청합니다.

```
데이터를 서버에 저장할 수 있게 해줘
```

저장 기능 추가 후:

* 새로고침해도 데이터 유지
* 배포 후에도 동일하게 동작
* Waveon 클라우드 DB에 저장

***

### 데이터 저장 요청 예시

#### 기본 저장

```
직원 데이터를 저장할 수 있게 해줘.
폼 제출 시 데이터베이스에 저장하고,
테이블에서 저장된 데이터를 불러와서 보여줘.
```

#### 저장 + 수정 + 삭제

```
데이터를 저장, 수정, 삭제할 수 있게 해줘.

- 폼 제출 → 새 데이터 저장
- 테이블 행 클릭 → 수정 모달
- 삭제 버튼 → 확인 후 삭제
```

#### 특정 조건 조회

```
저장된 직원 중에서 개발팀 직원만 조회해서 보여줘.
부서 필터를 선택하면 해당 부서만 표시되게.
```

***

### 데이터 구조

AI가 자동으로 데이터 구조를 생성합니다.

#### 예시: 직원 데이터

폼 필드 기준으로 데이터 구조가 결정됩니다.

```javascript
// 폼 필드
- 이름 (텍스트)
- 부서 (드롭다운)
- 이메일 (이메일)
- 입사일 (날짜)

// 생성되는 데이터 구조
{
  id: "자동 생성",
  name: "홍길동",
  department: "개발팀",
  email: "hong@company.com",
  joinDate: "2024-01-15",
  createdAt: "자동 생성"
}
```

***

### 에디터 vs 배포 환경 데이터

#### 분리된 환경

| 환경          | 데이터 위치 | 용도    |
| ----------- | ------ | ----- |
| 에디터 Preview | 개발 DB  | 테스트   |
| 배포된 앱       | 운영 DB  | 실제 사용 |

#### 주의사항

* 에디터에서 입력한 테스트 데이터는 배포 앱에 없음
* 배포 후 실제 데이터를 새로 입력해야 함

{% hint style="info" %}
**데이터 마이그레이션**

개발 데이터를 운영 환경으로 이동하려면 Admin에게 문의하세요.
{% endhint %}

***

### 외부 데이터 연동

#### REST API

외부 서비스의 API를 호출할 수 있습니다.

```
외부 API에서 상품 목록을 가져와서 테이블에 표시해줘.
API URL: https://api.example.com/products
```

→ REST API 연동

#### 파일 데이터

Excel, CSV 파일을 업로드하여 데이터를 가져올 수 있습니다.

```
[Excel 파일 업로드]
이 엑셀 파일의 데이터를 테이블에 표시하고,
수정할 수 있게 해줘.
```

***

### 데이터 관련 팁

#### 1. 명확한 필드 정의

```
직원 데이터 필드:
- id: 자동 생성 (수정 불가)
- name: 필수, 텍스트
- email: 필수, 이메일 형식
- department: 필수, 드롭다운 (개발팀/마케팅팀/영업팀)
- joinDate: 필수, 날짜
- status: 기본값 "재직중"
```

#### 2. 유효성 검사 추가

```
폼 제출 시 유효성 검사 추가해줘:
- 이름: 2글자 이상
- 이메일: 올바른 이메일 형식
- 입사일: 오늘 이전 날짜만 가능
```

#### 3. 중복 데이터 방지

```
이메일이 중복되면 저장하지 않고
"이미 등록된 이메일입니다" 에러를 보여줘.
```

***

### 다음 단계
