2020.코딩일지
[mac] postgresql Guide 본문
728x90
1. postgreSQL설치 및 데이터베이스 생성
https://www.enterprisedb.com/downloads/postgres-postgresql-downloads
mac os의 최신버전 설치
엔터4번치고 비번1234입력하고 마지막 엔터!
psql shell에서] \conninfo (사용자정보를 확인.)
psql shell에서] 명령어 \l (백슬레시 영어소문자L : 데이터베이스의 목록 확인 가능.)
쉘너비가 좁으면 편집기로 들어갑니다.... 들어갔다면 :wq 로 나오세요~
위 그림과 같지 않다면 데이터베이스를 생성.
psql shell에서 데이터베이스 생성하는 SQL문] 세미콜론도 잊지않고 챙겨주기!
CREATE DATABASE postoffice;
데이터베이스와 연결.
psql shell에서] \c postoffice;
2. 테이블 생성
아래와 같이 테이블 3개를 생성합니다.
2-1. user_info 테이블 생성
CREATE TABLE user_info(
ID SERIAL UNIQUE PRIMARY KEY,
user_id VARCHAR(50) NOT NULL,
user_pwd VARCHAR(50) NOT NULL,
user_nickname VARCHAR(50) NOT NULL,
user_account VARCHAR(43),
private_key VARCHAR(70),
token_amount numeric,
eth_amount numeric,
create_at VARCHAR(19));
2-2. post_info 테이블 생성
CREATE TABLE post_info(
ID SERIAL UNIQUE PRIMARY KEY,
user_id INT NOT NULL,
title VARCHAR(50) NOT NULL,
content TEXT NOT NULL,
create_at VARCHAR(19) NOT NULL);
외래키 설정
ALTER TABLE post_info ADD CONSTRAINT post_info_fk FOREIGN KEY (user_id) REFERENCES user_info (id);
2-3. nft_info 테이블 생성
CREATE TABLE nft_info(
ID SERIAL UNIQUE PRIMARY KEY,
user_id INT NOT NULL,
token_uri VARCHAR(100),
tx_hash VARCHAR(67));
외래키 설정
ALTER TABLE nft_info ADD CONSTRAINT nft_info_fk FOREIGN KEY (user_id) REFERENCES user_info (id);
생성된 3개의 테이블 확인하는 명령어는 아래와 같습니다.
psql shell에서] \dt
테이블 각각의 타입정보를 확인하는 명령어는 아래와 같습니다.
psql shell에서] \d 테이블명;
3. 데이터 확인 및 삭제
데이터확인
SELECT * FROM user_info; //이렇게 하셔도 됩니다만 정렬이 되지않은 모습.
SELECT * FROM {테이블명} ORDER BY {기준컬럼명 보통은 id};
SELECT * FROM user_info ORDER BY id; //id 컬럼으로 정렬한 데이터
데이터삭제
//해당 데이터만 삭제
DELETE FROM {테이블명} WHERE {컬럼명} = {해당};
DELETE FROM post_info WHERE id = 5;
// 테이블 내의 전체 데이터삭제
DELETE FROM {테이블명};
DELETE FROM post_info;
'WebServer&DB&CTI' 카테고리의 다른 글
다이어그램 테이블구조그리기 (0) | 2022.12.06 |
---|---|
[에러해결]Error: You attempted to save an instance with no primary key, this is not allowed since it would result in a global update (0) | 2022.11.18 |
[Docker]Node.js웹 앱의 도커라이징Dockerizing(컨테이너화) (0) | 2022.08.20 |
[Docker]리눅스기반, 왜도커인가[BEB 6th] (0) | 2022.08.19 |
[인증/보안]OAuth2.0[BEB 6th] (1) | 2022.08.15 |
Comments