Database
-
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 -
CRUD ( Create: 생성, Read: 읽기, Update: 갱신, Delete:삭제 ) 데이터 관리는 데이터를 생성/읽기/갱신/삭제 하는 것 C: 생성 테이블 전체 컬럼에 대응하는 값을 모두 넣는 경우 INSERT INTO 테이블명 VALUES(컬럼1 값, 컬럼2 값 ...); 테이블의 특정 칼럼에만 값을 넣는 경우 (지정되지 않은 칼럼은 디폴트값 or NULL값이 입력됨) INSERT INTO 테이블명 (칼럼명1, 칼럼명2, ...) VALUES(값1, 값2, ...); id는 auto_increment이므로 특정 값을 넣어주지 않는다면 자동 증가하여 입력된다. R: 읽기 테이블 전체 컬럼의 데이터를 모두 읽는 경우 SELECT * FROM 테이블명; 테이블의 특정 컬럼만 읽는 경우 SELECT..
MySQL Workbench DMLCRUD ( Create: 생성, Read: 읽기, Update: 갱신, Delete:삭제 ) 데이터 관리는 데이터를 생성/읽기/갱신/삭제 하는 것 C: 생성 테이블 전체 컬럼에 대응하는 값을 모두 넣는 경우 INSERT INTO 테이블명 VALUES(컬럼1 값, 컬럼2 값 ...); 테이블의 특정 칼럼에만 값을 넣는 경우 (지정되지 않은 칼럼은 디폴트값 or NULL값이 입력됨) INSERT INTO 테이블명 (칼럼명1, 칼럼명2, ...) VALUES(값1, 값2, ...); id는 auto_increment이므로 특정 값을 넣어주지 않는다면 자동 증가하여 입력된다. R: 읽기 테이블 전체 컬럼의 데이터를 모두 읽는 경우 SELECT * FROM 테이블명; 테이블의 특정 컬럼만 읽는 경우 SELECT..
2022.04.10 -
1. 테이블 생성 테이블을 생성할 데이터베이스를 먼저 사용하겠다고 명령한 후에 테이블을 생성한다. USE dbname; CREATE TABLE 테이블명 ( 컬럼명 데이터 형식, 컬럼명 데이터 형식, . . PRIMARY_KEY(컬럼명) ); 아래와 같은 테이블을 만들고자 한다. USE mydata; CREATE TABLE customer( Id INT UNSIGNED NOT NULL AUTO_INCREMENT, Name CHAR(20) NOT NULL, Age TINYINT, Phone VARCHAR(20), Adress VARCHAR(50), PRIMARY KEY(Id) ); PRIMARY KEY로 지정할 컬럼은 NULL 값을 등록할 수 없어야 하고, 컬럼 안에서 같은 값이 없도록 각 값이 유일해야 한..
MySQL Workbench 테이블 생성1. 테이블 생성 테이블을 생성할 데이터베이스를 먼저 사용하겠다고 명령한 후에 테이블을 생성한다. USE dbname; CREATE TABLE 테이블명 ( 컬럼명 데이터 형식, 컬럼명 데이터 형식, . . PRIMARY_KEY(컬럼명) ); 아래와 같은 테이블을 만들고자 한다. USE mydata; CREATE TABLE customer( Id INT UNSIGNED NOT NULL AUTO_INCREMENT, Name CHAR(20) NOT NULL, Age TINYINT, Phone VARCHAR(20), Adress VARCHAR(50), PRIMARY KEY(Id) ); PRIMARY KEY로 지정할 컬럼은 NULL 값을 등록할 수 없어야 하고, 컬럼 안에서 같은 값이 없도록 각 값이 유일해야 한..
2022.04.08 -
1. Workbench 사용법 MySQL Connections 의 + 버튼을 누른다. 원하는 Connection 이름을 입력한 뒤 OK 버튼을 누른다. 생성된 Connection을 클릭하면 아래와 같은 화면을 볼 수 있다. 2. Database 생성 1. 데이터베이스 생성 CREATE DATABASE dbname; 2. 데이터베이스 목록 보기 SHOW DATABASES; 3. dbname 데이터베이스 사용 시 USE dbname; 4. dbname 데이터베이스 삭제 DROP DATABASE [IF EXISTS] dbname; SHOW DATABASES; 입력 시 생성된 Connection에 존재하는 데이터베이스 목록을 확인할 수 있다. 기본적으로 생성되는 데이터베이스들을 확인할 수 있다. CREATE D..
MySQL Workbench 데이터베이스 생성1. Workbench 사용법 MySQL Connections 의 + 버튼을 누른다. 원하는 Connection 이름을 입력한 뒤 OK 버튼을 누른다. 생성된 Connection을 클릭하면 아래와 같은 화면을 볼 수 있다. 2. Database 생성 1. 데이터베이스 생성 CREATE DATABASE dbname; 2. 데이터베이스 목록 보기 SHOW DATABASES; 3. dbname 데이터베이스 사용 시 USE dbname; 4. dbname 데이터베이스 삭제 DROP DATABASE [IF EXISTS] dbname; SHOW DATABASES; 입력 시 생성된 Connection에 존재하는 데이터베이스 목록을 확인할 수 있다. 기본적으로 생성되는 데이터베이스들을 확인할 수 있다. CREATE D..
2022.04.06 -
JOIN을 사용해 오른쪽에 데이터를 이어붙인다면 UNION은 위아래로 데이터를 이어붙이는 작업이다. SELECT는 SELECT (ALL)이 default값이다. 중복을 제거하려면 SELECT DISTINCT 으로 선언해야한다. UNION의 경우는 UNION (DISTINCT)가 default값이다. 다 출력하려면 UNION ALL으로 선언해야 한다. Product 테이블에서 price = 200인 상품들만 출력하고 싶다. SELECT * FROM Products WHERE price = 200 FULL OUTER JOIN을 구현하고자 할 때, LEFT JOIN 과 RIGHT JOIN을 UNION으로 묶어 주면 된다. SELECT * FROM Custoemrs LEFT JOIN Orders ON Custo..
MySQL_집합연산 UNIONJOIN을 사용해 오른쪽에 데이터를 이어붙인다면 UNION은 위아래로 데이터를 이어붙이는 작업이다. SELECT는 SELECT (ALL)이 default값이다. 중복을 제거하려면 SELECT DISTINCT 으로 선언해야한다. UNION의 경우는 UNION (DISTINCT)가 default값이다. 다 출력하려면 UNION ALL으로 선언해야 한다. Product 테이블에서 price = 200인 상품들만 출력하고 싶다. SELECT * FROM Products WHERE price = 200 FULL OUTER JOIN을 구현하고자 할 때, LEFT JOIN 과 RIGHT JOIN을 UNION으로 묶어 주면 된다. SELECT * FROM Custoemrs LEFT JOIN Orders ON Custo..
2022.03.08 -
LeetCode : 181. Employees Earning More Than Their Managers Write an SQL query to find the employees who earn more than their managers. Return the result table in any order. The query result format is in the following example. SELECT Employee.name AS employee_name , Employee.salary AS employee_salary , Manager.name AS manager_name , Manager.salary AS manager_salary FROM Employee INNER JOIN Employ..
MySQL_Self JOINLeetCode : 181. Employees Earning More Than Their Managers Write an SQL query to find the employees who earn more than their managers. Return the result table in any order. The query result format is in the following example. SELECT Employee.name AS employee_name , Employee.salary AS employee_salary , Manager.name AS manager_name , Manager.salary AS manager_salary FROM Employee INNER JOIN Employ..
2022.03.08 -
INNER JOIN INNER JOIN : 기준 테이블과 조인 테이블 모두 데이터가 존재하는 것만 조회가 됨 SELECT * FROM Orders; SELECT * FROM Customers; CustomerID로 INNER JOIN을 한다면? SELECT * FROM Orders INNER JOIN Customers ON Orders.CustomerID = Customers.CustomerID; 여러 개의 TABLE을 INNER JOIN 할 수 있다. SELECT * FROM Orders INNER JOIN Customers ON Orders.CustomerID = Customers.CustomerID INNER JOIN Shippers ON Orders.ShipperID = Shippers.Shipp..
MySQL_테이블의 결합 JOININNER JOIN INNER JOIN : 기준 테이블과 조인 테이블 모두 데이터가 존재하는 것만 조회가 됨 SELECT * FROM Orders; SELECT * FROM Customers; CustomerID로 INNER JOIN을 한다면? SELECT * FROM Orders INNER JOIN Customers ON Orders.CustomerID = Customers.CustomerID; 여러 개의 TABLE을 INNER JOIN 할 수 있다. SELECT * FROM Orders INNER JOIN Customers ON Orders.CustomerID = Customers.CustomerID INNER JOIN Shippers ON Orders.ShipperID = Shippers.Shipp..
2022.03.03