전체 글 (29) 썸네일형 리스트형 MS SQL SEQUENCE와 IDENTITY SEQUENCE와 IDENTITY를 이용해 컬럼을 생성하면 행 INSERT시 초기값 기준으로 일정하게 증가하는 값을 얻을 수 있다. 1)IDENTITY: -테이블 생성시 컬럼에 IDENTITY(시작값 , 증가값) 옵션을 같이 넣어주는 방식으로 사용한다. EX) 쿼리: CREATE TABLE EX( ....... , NUM INT IDENTITY(0,2) ,...............) 결과: 1번째 NUM컬럼 값 0 , 2번째 NUM컬럼 값 2 , 3번쨰 NUM컬럼 값 4 ...... 2)SEQUENCE: -SEQUENCE를 선언하고 테이블 생성시 컬럼을 NEXT VALUE FOR PRODUCTSEQ로 작성하면 된다. CREATE SEQUENCE 시퀀스명 AS 타입 START WITH 시작값 INCREM.. MS SQL 테이블 조작(생성,삽입,삭제,변경) 1)테이블 삭제 - DROP TABLE 테이블이름 2)테이블 생성 - CREATE TABLE 이름( 컬럼명 TYPE [not null] [primary key] [UNIQUE] [ IDENTITY(시작,증가량) ] …. , PRIMARY KEY(컬럼명들) , CONSTRAINT 이름 FOREIGN KEY(컬럼명) REFERENCES 테이블명(컬럼명) , CONSTRAINT 이름 CHECK( 조건 ) ); *[]는 생략 가능 / CHECK의 조건은 where절 조건 처럼 작성하면됨 * foreign key는 참조 테이블의 primary key와 unique 컬럼만 가능하며 참조하는 테이블에 존재하는 값들로만 이루어 져있어야한다. 3) 테이블 변경 - 컬럼 없애기: ALTER TABLE 이름 DROP COL.. MS SQL 데이터 타입 1. 문자형 - CHAR:영문만을 담는 데이터 타입이며 삽입된 문자의 길이가 할당한 크기 보다 적은 경우 나머지를 공백으로 채운다. - VARCHAR: 영문만을 담는 데이터 타입이다. - NCHAR: 영문뿐만 아니라 한국어등의 다국어를 담을 수 있는 데이터 타입이며 삽입된 문자의 길이가 할당한 크기 보다 적은 경우 나머지를 공백으로 채운다. - VARCHAR: 영문만을 담는 데이터 타입이다. * NCHAR와 VARCHAR에 데이터 삽입시 N을 붙혀주어야한다! EX) INSERT INTO 테이블명(컬럼명) VALUES (N '삽입하고자하는 값') * 문자형(N)에서 문자형이 CHAR,VARCHAR,NCHAR, NVARCHAR 모두 최대 N길이까지 문자를 담을 수 있다. 하지만 CHAR와 VARCHAR의 경.. 블록체인 유효성 검증 1.블록의 유효성 검증이란? 블록체인 내에 있는 모든 노드들이 채굴자가 채굴한 블록 안에 있는 거래 내역(트랜잭션)의 정당성을 검사하는 것이다. 또한 해당 블록이 채굴 조건을 만족했는지의 여부도 검사한다. 이를 통해 악의적인 의도를 갖고 내용을 위조, 변조시킨 블록을 생성하여 채굴한다 해도 모든 노드들에게 검증을 받게 돼 발각된다. 하지만 블록체인 내의 컴퓨팅 파워 51%를 보유하고 있다면 이는 가능하나 엄청난 비용이 발생하기 때문에 오히려 위조 성공 시 보다 손해를 보게 된다. 이러한 이유로 블록체인은 강력한 보안성과 신뢰성을 보장하는 기술이라고 여기는 것이다. 2.유효성 검증 이해를 위해.. 1> 상태변환 함수 비트코인과 같은 암호화폐의 장부는 상태(State) 변환 시스템으로 볼 수 있다. 은행 시.. c++ stl Container 사용법 정리 문제를 해결할 때 적절한 자료구조를 선택하면 문제를 쉽게 해결할 수 있다. c++에서 지원하는 아주 유용한 container들이 있다. 간단하게 각각 접근법,삽입,삭제에 대해서 알아보자. -vector 정리해 놓은 개시물 링크 https://zero-stone.tistory.com/22 >접근법: 1) v[index] / 시간복잡도=O(1) 2) v.at(index) / 시간복잡도=O(1) 3) v.back() / 시간복잡도=O(1) 4) v.front() / 시간복잡도=O(1) 5) v.begin과 v.end를 이용해 iterator로 접근 / 시간복잡도=O(N) 6) v.data를 이용해 포인터로 접근 / 시간복잡도=O(N) iterator가 [] 지원 ex) it[1] >삽입: 1) v.insert.. C++ STL Sequence Container -Sequence Container란? *container= 기본자료형과 사용자가 정의한 자료형을 담는 자료구조 *Sequence= 배열과 같이 입력한 순서대로 저장하여 정렬이 돼있지 안은 자료구조이다 c++ stl중 지원하는 Sequence Container의 종류는 > vector https://zero-stone.tistory.com/22 > deque https://zero-stone.tistory.com/25 > list https://zero-stone.tistory.com/23 > forward_list https://zero-stone.tistory.com/24 로 이루어져있다. (궁금하면 링크 참조) -특징 1) vector vector는 배열로 구현된 자료구조이다. 크기가 자유자재로 늘.. c++ deque #inclue -deque란? vector와 같은 기능을 하는 자료구조이다. vector와의 차이는 vector의 경우 insert시 용량이 다 하면 새로 동적할당 받고 기존은 데이터를 새로 할당 받은 메모 리 공간에 복사한다. deque는 이러한 단점을 보완하기 위해 insert시 용량이 다 해도 공간을 늘리되 복사 작업을 하지 않는다. vector와 아주 유사함으로 지원하는 함수도 거의 유사하다. vector를 잘 모른다면 참고 https://zero-stone.tistory.com/22 -vector와의 차이 1)capacity , data , reserve 지원x vector는 메모리의 연속적인 공간에 사상된다. 이와 반대로 deque는 연속적인 공간에 사상되지 안는다. deque은 블록단위로 메.. c++ forward_list -forward_list란? list와 다르게 단방향(전방) 포인터로 연결된 구조이다. 그래서 iterator이용시 --사용 불가 list를 잘 모른다면 https://zero-stone.tistory.com/23 참고 (list와 같은 부분은 생략하겠다.) -헤더파일 #include -함수 1)befor_begin(): 시간복잡도:O(1) 시작 위치전을 가리키는 정방향 iterator 반환 begin()함수도 존재 2)erase_after, insert_after , splice_after: 시간복잡도:O(N) 모두 list의 erase,insert,splice 기능과 동일하다. 차이점은 예를들어 리스트의 5번째 자리에 insert하고 싶다면 (양방향)list는 5번째 iterator를 매개변수로 전달.. 이전 1 2 3 4 다음