코린코딩일지 184

SQL | (create | drop | alter) TABLE + Constraints

CREATE TABLE 1. 데이터베이스에 새 테이블을 만드는 데 사용 - PersonID, LastName, FirstName, Address 및 City의 5개 열이 포함된 "Persons"라는 테이블을 생성 CREATE TABLE Persons ( PersonID int, LastName varchar(255), FirstName varchar(255), Address varchar(255), City varchar(255) ); datatype 매개변수(예: varchar, 정수, 날짜 등)는 열이 보유할 수 있는 데이터 유형(예: varchar, 정수, 날짜 등)을 지정 SQL INSERT INTO문을 사용하여 새로 생성한 "Persons"라는 테이블을 데이터를 채울 수 있음 2. 기존 테이블의..

STUDY/DataBase 2022.11.14

SQL | (show | create | drop | alter | backup) DATABASE

데이터베이스를 생성/삭제/백업하기 전에 관리자 권한이 있는지 확인 SHOW DATABASE - 데이터베이스 목록을 확인 SHOW DATABASES; CREATE DATABASE - "testDB"라는 데이터베이스를 생성 CREATE DATABASE testDB; DROP DATABASE - 기존 데이터베이스 "testDB"를 삭제 DROP DATABASE testDB; ALTER DATABASE - 기존 데이터베이스 "testDB"의 전체적인 특성 수정 ALTER DATABASE testDB CHARACTER SET=문자집합이름; ALTER DATABASE testDB COLLATE=콜레이션이름; 자주 사용되는 대표적 문자집합 CHARACTER SET utf8 : UTF-8 유니코드를 지원하는 문자셋 (..

STUDY/DataBase 2022.11.11

SQL | INSERT INTO | NULL

INSERT INTO 테이블에 새 레코드를 삽입하는 데 사용 CustomerID는 자동으로 업데이트됨 1. "Customers" 테이블에 새 레코드를 삽입 (테이블의 모든 열에 대한 값을 추가하는 경우 열을 따로 지정할 필요 없음) (테이블의 열과 값의 순서가 맞는지 확인 필수 !) INSERT INTO Customers VALUES ('Cardinal', 'Tom B. Erichsen', 'Skagen 21', 'Stavanger', '4006', 'Norway'); INSERT INTO Customers (CustomerName, ContactName, Address, City, PostalCode, Country) VALUES ('Cardinal', 'Tom B. Erichsen', 'Skagen ..

STUDY/DataBase 2022.11.11

SQL | SELECT | DISTINCT | WHERE | AND, OR and NOT | ORER BY

SELECT 데이터베이스에서 데이터를 선택하는 데 사용 반환된 데이터는 결과 집합이라고 하는 결과 테이블에 저장 1. "Customers" 테이블의 모든 레코드를 선택 SELECT * FROM Customers; 2. "Customers" 테이블에서 "CustomerName" 및 "City" 열을 선택 SELECT CustomerName, City FROM Customers; 3. "Customers" 테이블에서 "CustomerName" 열을 선택 SELECT CustomerName FROM Customers; SELECT DISTINCT 고유한(다른) 값만 반환하는 데 사용 테이블 내부의 열에는 종종 많은 중복 값이 ​​포함되는데 다른(고유한) 값만 선택할 때 사용 Microsoft Access 데이..

STUDY/DataBase 2022.11.11

SQL

데이터베이스 액세스 및 조작을 위한 표준 언어 SQL 키워드는 대소문자를 구분하지 않습니다. select / SELECT 둘다 사용 가능 일부 데이터베이스 시스템에서는 각 SQL 문의 끝에 세미콜론이 필요합니다. 세미콜론은 서버에 대한 동일한 호출에서 둘 이상의 SQL 문을 실행할 수 있도록 하는 데이터베이스 시스템에서 각 SQL 문을 구분하는 표준 방법입니다. SQL can do SQL can execute queries against a database SQL can retrieve data from a database SQL can insert records in a database SQL can update records in a database SQL can delete records from ..

STUDY/DataBase 2022.11.11

Django | RESTful API는 뒤에 slash가 없어야하는데 WARNING 발생

RESTful한 API의 규칙 중 하나가 url 뒤의 slash가 없음임. 그래서 Django 프로젝트를 적용해보려 했더니 경고가 발생하더라 원하는 url 127.0.0.1:8000/users/ 👉 127.0.0.1:8000/users 127.0.0.1:8000/posts/ 👉 127.0.0.1:8000/posts 우선 127.0.0.1:8000/users 와 127.0.0.1:8000/posts 을 했을 때 경고 내용을 자세히 보자면 Your URL pattern '/login' has a route beginning with a '/'. Remove this slash as it is unnecessary. If this pattern is targeted in an include(), ensure ..

PROJECTS 2022.11.10

AttributeError: This QueryDict instance is immutable

해당 함수는 게시글 작성에 관한 코드. view, service, Service TestCase 부분에서는 정상 작동되었으나 API TestCase를 작성 중에 발생 response 부분에서 data를 받지 못함. def test_post_view_def_post_ok(self): client = APIClient() user = User.objects.get(username = 'test_user') create_data = { 'title' : 'test_title3', 'content' : 'test_content3', 'tags' : '#sns', 'is_active' : True, 'views' : 60, 'created_date' : '2022-10-16 08:00:00.000000' } cl..

PROJECTS 2022.10.20

쿼리수 줄이기

전 포스팅에서 쿼리수를 확인해보았습니다 ! 지금 제 코드들..의 상황에서 쿼리수를 극단적으로 줄이기는 힘들어서 찔끔 줄여봤습니다. 42 -> 39 아래는 쿼리수를 확인하려 했던 함수입니다. 바뀐 부분은 단 한 줄로 23번에 해당됩니다. Post.objects.last() 🔽 🔽 🔽 post_data_serializer.instance objects.last() 쿼리 셋 결과 중 가장 마지막 오브젝트만 조회할 때 사용하는데 serializer.instance 이미 PostSerializer를 통해 오브젝트가 특정되어 있고, DB에서 어떤 오브젝트인지 찾을 필요가 없기 때문에 사용해보니 쿼리수가 줄은 것을 확인할 수 있었음

PROJECTS 2022.10.13

쿼리수 확인

디버그 콘솔을 보면 final_queries에서 쿼리수를 확인할 수 있음 쿼리들을 보고자하면 captured_queries를 누르면 보임 이걸 확인하고자 한다면 테스트코드(TestCase) 에서 디버그 모드를 사용해야함 중단점은 ctx.aqptured_queries 에 찍어주고 디버그 콘솔창에서 ctx를 입력해주면 확인이 됨 쿼리수를 확인할 수 있는 코드는 이 부분으로, 주석에 보이는 것처럼 본인이 확인하고자 하는 함수와 인자값을 같이 입력해주면 됨 with CaptureQueriesContext(connection) as ctx: create_post(create_data, user) # 본인이 확인하고자하는 함수를 넣어주면 됨 ctx.captured_queries ⭐️ 임포트는 필수 ⭐️ from d..

PROJECTS 2022.10.12
반응형