Database/MySQL
-
Steam 데이터베이스에 game 테이블이 아래처럼 존재한다고 하자. 데이터 출력 : SELECT 1. SQL을 사용해서 데이터를 가지고 놀기 위해서는 DBeaver에서는 SQL 편집기를 열어서 SQL를 작성해야한다. 2. steam 데이터베이스의 game 테이블의 데이터를 다 출력하고 싶다. select * from 테이블명 select * from 데이터베이스명.테이블명 3. steam 데이터베이스의 game 테이블의 특정 컬럼의 데이터를 출력하고 싶다. select 컬럼명1, 컬럼명2 from 테이블명 데이터 정렬 : ORDER BY 1. 데이터를 정렬해서 출력하고 싶을 때는 뒤에 ORDER BY 문법을 추가해주면 된다. ASC : 오름차순 (1→2→3, 가→나→다) SELECT * FROM 테이블..
[MySQL] 데이터 출력 및 정렬 (SELECT, ORDER BY)Steam 데이터베이스에 game 테이블이 아래처럼 존재한다고 하자. 데이터 출력 : SELECT 1. SQL을 사용해서 데이터를 가지고 놀기 위해서는 DBeaver에서는 SQL 편집기를 열어서 SQL를 작성해야한다. 2. steam 데이터베이스의 game 테이블의 데이터를 다 출력하고 싶다. select * from 테이블명 select * from 데이터베이스명.테이블명 3. steam 데이터베이스의 game 테이블의 특정 컬럼의 데이터를 출력하고 싶다. select 컬럼명1, 컬럼명2 from 테이블명 데이터 정렬 : ORDER BY 1. 데이터를 정렬해서 출력하고 싶을 때는 뒤에 ORDER BY 문법을 추가해주면 된다. ASC : 오름차순 (1→2→3, 가→나→다) SELECT * FROM 테이블..
2023.03.02 -
1. 데이터베이스 생성 2. Table 생성 컬럼을 만들 때 DataType을 제대로 명시해주는 것이 중요하다. 문자 Data Type Data Type 저장가능한 양 특징 CHAR 0~255자 - char(100) 과 같이 사용하면 총 100자까지 저장할 수 있다고 길이 제한을 기입하는 것 - 정말 간단한 문자 저장시 사용하지만, 저장할 문자의 길이가 다양하다면 사용하는 것을 비추 VARCHAR 0~65535자 - varchar(100) TEXT 0~65535자 TINYTEXT 0~255자 MEDIUMTEXT 0~1600만자 - 긴 텍스트를 저장해야할 때 주로 사용 LONGTEXT 0~42억자 - 긴 텍스트를 저장해야할 때 주로 사용 숫자 Data Type 양의 숫자만 저장하려면 column을 만들 때..
[MySQL] DBeaver UI로 Database & Table 생성1. 데이터베이스 생성 2. Table 생성 컬럼을 만들 때 DataType을 제대로 명시해주는 것이 중요하다. 문자 Data Type Data Type 저장가능한 양 특징 CHAR 0~255자 - char(100) 과 같이 사용하면 총 100자까지 저장할 수 있다고 길이 제한을 기입하는 것 - 정말 간단한 문자 저장시 사용하지만, 저장할 문자의 길이가 다양하다면 사용하는 것을 비추 VARCHAR 0~65535자 - varchar(100) TEXT 0~65535자 TINYTEXT 0~255자 MEDIUMTEXT 0~1600만자 - 긴 텍스트를 저장해야할 때 주로 사용 LONGTEXT 0~42억자 - 긴 텍스트를 저장해야할 때 주로 사용 숫자 Data Type 양의 숫자만 저장하려면 column을 만들 때..
2023.03.02 -
MySQL installer 다운로드 링크 1. 굳이 전부 다 설치할 필요가 없으므로 Custom 선택 2. 우선 기본적으로 아래 그림처럼 세가지를 추가하여 설치해준다. MySQL Server == DBMS 본체 MySQL Workbench == DB GUI 툴 MySQL shell == DB를 터미널 명령어 입력으로 조작할 수 있는 프로그램 3. Execute를 눌러서 설치 진행 4. 계속 Next 누르다가 비번 설정 5. Window Service 부분에서 아래 그림처럼 체크되어있는지 확인 6. 설치가 다 되었으면 MySQL Workbench를 실행해서 Local Instance를 클릭하고 password를 입력해서 MySQL DB를 띄울 수 있다. Workbench보다 깔끔하고 쉬우며 다른 DBMS..
MySQL & DBeaver 설치 (윈도우)MySQL installer 다운로드 링크 1. 굳이 전부 다 설치할 필요가 없으므로 Custom 선택 2. 우선 기본적으로 아래 그림처럼 세가지를 추가하여 설치해준다. MySQL Server == DBMS 본체 MySQL Workbench == DB GUI 툴 MySQL shell == DB를 터미널 명령어 입력으로 조작할 수 있는 프로그램 3. Execute를 눌러서 설치 진행 4. 계속 Next 누르다가 비번 설정 5. Window Service 부분에서 아래 그림처럼 체크되어있는지 확인 6. 설치가 다 되었으면 MySQL Workbench를 실행해서 Local Instance를 클릭하고 password를 입력해서 MySQL DB를 띄울 수 있다. Workbench보다 깔끔하고 쉬우며 다른 DBMS..
2023.03.02 -
Gmarket의 BEST 항목을 MySQL을 이용해 데이터베이스에 저장하고자 한다. 1. Schema 정의 ranking 테이블과 상품 정보를 담고있는 items 테이블을 정의한다. ranking 테이블의 경우 카테고리마다 랭킹이 있으므로 PRIMARY KEY를 랭킹 정보로 사용할 수는 없다. 따라서 따로 num이라는 칼럼을 PRIMARY KEY로 설정한다. items 테이블의 item_code를 외래키로 참조한다. CREATE TABLE ranking ( num INT AUTO_INCREMENT NOT NULL PRIMARY KEY, main_category VARCHAR(50) NOT NULL, sub_category VARCHAR(50) NOT NULL, item_ranking TINYINT UNS..
MySQL_크롤링 후 데이터베이스에 저장Gmarket의 BEST 항목을 MySQL을 이용해 데이터베이스에 저장하고자 한다. 1. Schema 정의 ranking 테이블과 상품 정보를 담고있는 items 테이블을 정의한다. ranking 테이블의 경우 카테고리마다 랭킹이 있으므로 PRIMARY KEY를 랭킹 정보로 사용할 수는 없다. 따라서 따로 num이라는 칼럼을 PRIMARY KEY로 설정한다. items 테이블의 item_code를 외래키로 참조한다. CREATE TABLE ranking ( num INT AUTO_INCREMENT NOT NULL PRIMARY KEY, main_category VARCHAR(50) NOT NULL, sub_category VARCHAR(50) NOT NULL, item_ranking TINYINT UNS..
2022.04.19 -
Foreign Key(외래키)를 설정하는 이유 : 두 테이블 사이에 관계를 선언해서, 데이터의 무결성을 보장하기 위해 practice 라는 이름의 데이터베이스에 userTbl, buyTbl 이라는 두 테이블 생성 DROP DATABASE IF EXISTS practice; CREATE DATABASE practice DEFAULT CHARSET=utf8 COLLATE=utf8_bin; USE practice; DROP TABLE IF EXISTS userTbl; CREATE TABLE userTbl ( userID CHAR(8) NOT NULL PRIMARY KEY, name VARCHAR(10) NOT NULL, birthYear INT NOT NULL, addr CHAR(2) NOT NULL, mob..
MySQL_Foreign keyForeign Key(외래키)를 설정하는 이유 : 두 테이블 사이에 관계를 선언해서, 데이터의 무결성을 보장하기 위해 practice 라는 이름의 데이터베이스에 userTbl, buyTbl 이라는 두 테이블 생성 DROP DATABASE IF EXISTS practice; CREATE DATABASE practice DEFAULT CHARSET=utf8 COLLATE=utf8_bin; USE practice; DROP TABLE IF EXISTS userTbl; CREATE TABLE userTbl ( userID CHAR(8) NOT NULL PRIMARY KEY, name VARCHAR(10) NOT NULL, birthYear INT NOT NULL, addr CHAR(2) NOT NULL, mob..
2022.04.11 -
1. sql 파일 Load students.sql 이라는 파일에는 다음과 같은 내용이 작성되어 있다. 데이터베이스 생성 CREATE DATABASE student_mgmt DEFAULT CHARSET=utf8 COLLATE=utf8_bin; DEFAULT CHARSET = utf8 문자 인코딩과 관련된 설정: 한글 데이터의 정확한 처리를 위해 데이터베이스/테이블 생성 시 추가 COLLATE = utf8_bin Collation은 특정 문자 셋에 의해 데이터베이스에 저장된 값들을 비교 검색하거나 정렬 등의 작업을 위해 문자들을 서로 비교할 때 사용하는 규칙 테이블 생성 USE student_mgmt DROP TABLE IF EXIST students; CREATE TABLE students ( id TIN..
MySQL 파일로 실행1. sql 파일 Load students.sql 이라는 파일에는 다음과 같은 내용이 작성되어 있다. 데이터베이스 생성 CREATE DATABASE student_mgmt DEFAULT CHARSET=utf8 COLLATE=utf8_bin; DEFAULT CHARSET = utf8 문자 인코딩과 관련된 설정: 한글 데이터의 정확한 처리를 위해 데이터베이스/테이블 생성 시 추가 COLLATE = utf8_bin Collation은 특정 문자 셋에 의해 데이터베이스에 저장된 값들을 비교 검색하거나 정렬 등의 작업을 위해 문자들을 서로 비교할 때 사용하는 규칙 테이블 생성 USE student_mgmt DROP TABLE IF EXIST students; CREATE TABLE students ( id TIN..
2022.04.11 -
pymysql 기본 사용 방법 1. 모듈 import import pymysql 2. mySQL 연결 db = pymysql.connect(host='localhost', port=3306, user='유저명', passwd='비밀번호', db='데이터베이스 이름', charset='utf8') 3. MySQL 접속이 성공하면, Connection 객체로부터 cursor() 메서드를 호출하여 Cursor 객체를 가져옴 ecommerce = db.cursor() 4. Cursor 객체의 execute() 메서드를 사용하여 SQL 문장을 DB 서버에 전송 가능 sql = """ CREATE TABLE product ( PRODUCT_CODE VARCHAR(20) NOT NULL, TITLE VARCHAR(2..
PyMySQLpymysql 기본 사용 방법 1. 모듈 import import pymysql 2. mySQL 연결 db = pymysql.connect(host='localhost', port=3306, user='유저명', passwd='비밀번호', db='데이터베이스 이름', charset='utf8') 3. MySQL 접속이 성공하면, Connection 객체로부터 cursor() 메서드를 호출하여 Cursor 객체를 가져옴 ecommerce = db.cursor() 4. Cursor 객체의 execute() 메서드를 사용하여 SQL 문장을 DB 서버에 전송 가능 sql = """ CREATE TABLE product ( PRODUCT_CODE VARCHAR(20) NOT NULL, TITLE VARCHAR(2..
2022.04.11 -
Data Control Language는 mySQL 사용자 확인, 추가, 비밀번호 변경, 삭제와 관련된 작업을 한다. 1. mySQL 사용자 확인 mysql -u root -p use mysql; select host, user from user; //권한 목록 조회 localhost는 로컬에서만 접속을 허용하는 것이고, %는 외부에서 모든 IP접속을 허용하는 것이다. 2. 사용자 추가 1) 로컬에서만 접속 가능한 userid 생성 create user 'userid'@localhost identified by '비밀번호'; 2) 모든 호스트에서 접속 가능한 userid 생성 create user 'userid'@'%' identified by '비밀번호'; 3. 사용자 비밀번호 변경 SET PASSWO..
MySQL DCLData Control Language는 mySQL 사용자 확인, 추가, 비밀번호 변경, 삭제와 관련된 작업을 한다. 1. mySQL 사용자 확인 mysql -u root -p use mysql; select host, user from user; //권한 목록 조회 localhost는 로컬에서만 접속을 허용하는 것이고, %는 외부에서 모든 IP접속을 허용하는 것이다. 2. 사용자 추가 1) 로컬에서만 접속 가능한 userid 생성 create user 'userid'@localhost identified by '비밀번호'; 2) 모든 호스트에서 접속 가능한 userid 생성 create user 'userid'@'%' identified by '비밀번호'; 3. 사용자 비밀번호 변경 SET PASSWO..
2022.04.10