취준중이다. 포트폴리오를 새로 만들려고 하는데 ERD가 필요하다.
워크벤치에서 만든거는 알아서 만들어주는데 안드로이드 스튜디오에서 직접 Sqlite 혹은 Room 을 사용했다면
ERD를 만들기 위해 조금은 귀찮은 작업이 필요하다.
하지만, ERD없이 포트폴리오를 완성하고 싶지 않았다.
나는 시행착오를 겪어 2시간 정도 걸렸다. 까먹지 않게 기록해놔야징
우선, 안드로이드 스튜디오 내부에 있는 데이터베이스 파일을 내보내야 한다.
1. 아래 사진과 같은 경로로 이동하자.
주의사항이 있다면 에뮬레이터가 켜져있어야 하고, 에뮬레이터에 값이 저장 되어있어야 한다.
이렇게 들어가면 에뮬레이터의 데이터를 가져올 수 있는 창이 켜진다. 아래의 경로와 같이 들어가서 본인의 데이터베이스 파일을 찾아온다.
/data/data/your.package.name/databases/{본인이 만든 파일이름}.db
경로를 찾아왔지만 2. Save As하여 원하는 장소에 저장한다.
이 파일을 이제 ERD로 만들어야 하는데 바로 SQL 워크벤치에서 파일을 열려고 하면 안된다.
꼭 SQL 워크벤치 프로그램에서 만들지 않아도 되긴 하지만 나는 해당 프로그램을 사용하려고 한다.
3. Chat GPT을 연다.
해당 파일을 업로드 한 후 coin_database의 구조를 기반으로 생성한 SQL 덤프를 만들어 달라고 한다.
CREATE TABLE Interest_coin_table (
id INTEGER NOT NULL PRIMARY KEY,
coin_name TEXT NOT NULL,
opening_price TEXT NOT NULL,
closing_price TEXT NOT NULL,
min_price TEXT NOT NULL,
max_price TEXT NOT NULL,
units_traded TEXT NOT NULL,
acc_trade_value TEXT NOT NULL,
prev_closing_price TEXT NOT NULL,
units_traded_24H TEXT NOT NULL,
acc_trade_value_24H TEXT NOT NULL,
fluctate_24H TEXT NOT NULL,
fluctate_rate_24H TEXT NOT NULL,
selected INTEGER NOT NULL
);
CREATE TABLE selected_coin_price_table (
id INTEGER NOT NULL PRIMARY KEY,
coinName TEXT NOT NULL,
transaction_date TEXT NOT NULL,
type TEXT NOT NULL,
units_traded TEXT NOT NULL,
price TEXT NOT NULL,
total TEXT NOT NULL,
timeStamp INTEGER NOT NULL
);
CREATE TABLE room_master_table (
id INTEGER PRIMARY KEY,
identity_hash TEXT
);
이렇게 만들어줬다.
4. 이것을 가지고 워크벤치로 가서 DB를 새로 생성하고, 위의 쿼리문을 붙여 넣는다!
그럼 완성되었다. 이제 ERD를 만들어보자.
5. 아래 블로그에 설명이 잘 나와있다. 이거 참고하기!
MySQL Workbench로 ERD다이어그램 생성
오른쪽 SCHEMAS에서 마우스 오른쪽 클릭Create Schema 클릭Charset/Collation: utf8mb4 utf8mb4_bin오른쪽 아래 Apply 클릭Algorithm: Defalt Lock Type: DefaultApply 클릭Finish 클릭new_
velog.io
'안드로이드앱' 카테고리의 다른 글
빗썸 코인 API Room DB사용하여 저장하기 (0) | 2023.10.23 |
---|---|
빗썸 코인 리스트 가져오기 API 불러오기 통신하기 (1) | 2023.10.18 |
SDK33 permission 외장메모리 AUDIO 승인 대응하기 (0) | 2023.10.06 |
java.lang.IllegalStateException 오류 해결하기 (0) | 2023.09.26 |
ViewPage2_ImageSlide 뷰페이저2 자동 이미지 슬라이드 만들어보기 (0) | 2023.09.26 |