전체 글

전체 글

    [MariaDB] 데이터형식

    1. 숫자 형식 바이트 범위 bit(n) n/8 tinyint 1 -128 ~ 127 smallint 2 -32,768 ~ 2,767 mediumint 3 -8,388,608 ~ 8,388,607 int / integer 4 -21억 ~ 21억 bigint 8 -900경 ~ 900경 float 4 -3,40E+38 ~ 1.17E-38 double / real 8 -1.22E-308 ~ 1.79E+308 decimal(m, [d]) / numeric(m, [d]) 5~17 -1038+1 ~ 1038-1 decimal / numeric 에서 m은 전체자리수를, d는 소수점 이하 자리수를 의미합니다. 숫자형식에서 부호없는 정수를 지정할 수도 있는데 이런경우 -로 표현될 비트를 사용하게 되어서 -값은 표현할 수..

    [ASP.NET Core Web API] Swagger에 JWT인증 적용하기

    [ASP.NET Core Web API] Swagger에 JWT인증 적용하기

    프로젝트의 Start.cs -> ConfigureServices() 메서드에 다음과 같은 설정코드를 추가합니다. var securitySchema = new OpenApiSecurityScheme { Description = "다음과 같은 형식으로 JWT Authorization header에 토큰을 보내도록 합니다. \"Authorization: Bearer {token}\"", Name = "Authorization", In = ParameterLocation.Header, Type = SecuritySchemeType.Http, Scheme = "bearer", Reference = new OpenApiReference { Type = ReferenceType.SecurityScheme, Id = ..

    [BatteryAlert] 노트북용 배터리 알리미

    [BatteryAlert] 노트북용 배터리 알리미

    요즘 나오는 거의 대부분의 노트북은 과충전 방지 등의 기능을 지원하고 있는데 이러한 기능이 없는 노트북 사용자를 위해. 노트북의 충전/소모 여부를 알려주는 프로그램을 소개합니다. 참고로 배터리 수명을 잘 관리하기 위한 방법을 안내하는 동영상이 있는데 이것도 같이 참고하시면 좋을것 같습니다. 아무도 알려주지 않는 배터리 오래 사용하는 방법 - YouTube 프로그램을 실행하면 작업표시줄의 단축아이콘영역에 아이콘이 표시됨을 볼 수 있고 해당 아이콘을 더블클릭하거나 마우스 오른쪽 버튼을 눌러 '배터리 알림 열기'메뉴를 선택하면 다음과 같은 화면을 볼 수 있습니다. 프로그램 화면에서는 현재 충전량과 충전상태 등을 간단히 표시하고 있는데 오른쪽 설정 부분에서 충전 알림과 소모 알림을 설정합니다. 각각의 설정은 배..

    [MariaDB] CTE

    CTE(Common Table Expression)는 select로 가져온 결과를 하나의 테이블로 간주하여 필요한 쿼리를 좀 더 간략화하여 사용할 수 있도록 해줍니다. CTE의 사용형식은 아래와 같습니다. with [CTE이름] (컬럽명1, 컬럼명2....) as ( select 구문... ) 상기 규칙에 따라 CTE를 작성하면 다음과 같은 형식으로 만들어질 수 있습니다. with tmpCTETbl (userAddress, totalAge) as ( select userAddress, SUM(userAge) from tb_user tu group by userAddress ) select userAddress, totalAge from tmpCTETbl; 첫 번째 select문에서는 userAddress..

    [MairaDB] delete

    테이블의 데이터를 삭제하는 경우 delete 구문을 사용합니다. delete from tb_user where userSeq = 1; where를 생략하면 전체 테이블의 데이터를 삭제하므로 주의해야 합니다. 만약 전체가 아닌 조건에 맞는 상위 몇 건의 데이터만 삭제하고자 한다면 delete에 limit키워드를 사용합니다. delete from tb_user where userName Like '홍%' limit 2; 따라서 위 예제는 조건에 맞는 상위 2건의 데이터만 삭제하게 됩니다. 전체 데이터를 삭제하는 경우 delete대신 truncate table구문을 사용할 수도 있습니다. truncate table tb_user; truncate는 delete와 달리 트랜잭션 로그를 남기지 않습니다. 다른 D..

    [MariaDB] update

    특정 테이블의 데이터를 변경하기 위해서는 다음과 같이 합니다. update tb_user set userName = '홍길동' where userSeq = 1; where는 생략할 수 있으나 모든 행의 데이터가 변경될 수 있으므로 주의해야 합니다.

    [MariaDB] insert

    insert는 데이터를 삽입하며 다음과 같이 구현합니다. insert into tb_user (userNumber, userName, userAge, userAddress, userJoinDate, userUse) values ('CCC-000003', '홍길영', '35', '대구 광역시', now(), 1); 만약 여러 건(Row)의 데이터를 삽입하는 경우라면 , (콤마)로 각 행의 데이터를 구분하여 추가할 수 있으며 insert into tb_user (userNumber, userName, userAge, userAddress, userJoinDate, userUse) values ('CCC-000003', '홍길영', '35', '대구 광역시', now(), 1), ('DDD-000004', '..

    DML, DDL, DCL

    1. DML DML(Data Manipulation Language)는 select, insert, update, delete문과 같이 데이터를 조회, 삽입, 변경, 삭제하는 데 사용되는 SQL 구문을 의미합니다. 또 다르게는 트랜잭션(Transaction)을 발생시키는 SQL 구문을 DML이라고 볼 수 있습니다. 2. DDL DDL(Data Definition Language)는 Database나 그 하위의 Table, View등 특정 개체를 생성하거나 변경, 삭제하는 create, drop, alter 등의 SQL 구문을 의미합니다. 3. DCL DCL(Data Control Language)은 grant, revoke, deny등 권한에 관련된 SQL문에 해당합니다.