본문 바로가기

   
Programming/MS - SQL

제약조건, Primary Key, Foreign Key, Unique, Check, Null, Default

반응형

제약(Constraing) 조건

 - 열이름, 타입, 길이, 제약조건

 - 6가지

 - 1개의 컬럼에 대한 제약 사항을 지정

 - 데이터 입력이 잘못되엇을때를 방지하기 위한 무결성 지원 요소

1. Primary Key

2. Foreign Key

3. Unique

4. Check

5. Null : 행당 컬럼의 값이 null인지? 아닌지? 제약 , 해당 컬럼값을 기입을 반드시 해야하는지? 비워도 상관없는지?

          - 해당 컬럼값을 기입을 반드시 해야하는지? 비워도 상관없는지?

          - null : 써도0, 안써도 0

          - not null : 반드시 써야함0, 비워두면 에러

          - 필수입력 컬럼

6. Default

1. Null : 행당 컬럼의 값이 null인지? 아닌지? 제약 , 해당 컬럼값을 기입을 반드시 해야하는지? 비워도 상관없는지?

          - 해당 컬럼값을 기입을 반드시 해야하는지? 비워도 상관없는지?

          - null : 써도0, 안써도 0

          - not null : 반드시 써야함0, 비워두면 에러

          - 필수입력 컬럼

2. Primary Key : 기본키로 지정된 컬럼은 자동으로 not null이 된다. 기본키로 지정된 컬럼은 중복값을 허용 안한다. 기본키로 지정된 컬럼은 인덱스가 된다.


2.5. ID 컬럼

  - 레코드간의 유일한 식별자 컬럼이 필요한 경우사용

 - 예) 회원번호, 상품번호, 대여번호, 판매번호

 - 정수값을 사용자가 입력하지 않더라도 자동으로 증가해서 기입 되는 컬럼

 - 중수값, decimal만 사용 가능

 - 초기값부터 시작해서 레코드가 삽입될때마다 증가값만큼 증가 시킴, 초기값(10), 증가값(5) : 10, 15, 20, 25, 30..



3. Unique

 - PK와 유사함

 - 중복값을 허용하지 않는 컬럼

 - Null 허용

 - 안써도 되만 만약 쓴다면 절대로 중복값을 사용할 수 없음

 - Unique + Not Null = Primary Key




4. Default

 - 해당 컬럼값을 사용자가 기입하지 않으면 미리 준비해놓은 기본 값을 대신 입력

 - Null을 허용하는것보다 Default를 사용하는것을 권장 : 속도

 - Default 선언한 컬럼은 Not Null로 선언


5. Check

 - 원하는 조건을 만족하는 값만 기입할 수 있게 하는 제약

 - 비교연산자, 논리연산자, 함수등을 사용해서 제약

디자인 화면에서 해당 컬럼 마우스 우클릭 CHECK 제약조건 클릭후 제약조건을 추가한다. EX) 



SQL

 - Structured Query Language

 - 구조화된 질의 언어

 - 누구한테 질문을 한다.!! : 데이터를 가지고 있는 SQL Server한테 우리가 원하는 데이터를 달라고(처리해달라고) 질문을 한다.

1. SSMS를 사용해서...(편집창, 쿼리창, 스크립트창 사용해서 질문을 하고 결과를 본다.)

2. C#에서 사용(C#프로그램이 SQL Server에게 SQL 명령 질의)


SQL의 종류

 - ANSI - SQL, SQL-92 : 표준 SQL

 - MS-SQL 2008 (프로그램명) TSQL(Transact SQL)이라는 문법을 사용한다 MS 버젼의 SQL 자기네만의 함수 자기네만의 기능을 더 +알파 오라클(PL/SQL) : 오라클사에서 만들어 놓은 추가된 기능


SQL 특징

 - 텍스트 포맷(*.sql)

 - 한번 작성해놓은 SQL 문장은 재사용이 가능하다.

 - SQL문으로 디자이너에서 하는 모든 행동이 가능하다.


디비 서치 : 위에서 아래서 순차적으로 뒤진다. 컬럼중에 일부 컬럼(Primary Key)를 기준으로 데이타베이스에서 인덱스(책갈피 역활)를 만든다. Primary key 를 기준으로 데이터 베이스 검색 기준을 정한다. 순차적인 검색을 바로 원하는 정보로 검색 할수 있도록.

에러시 : 테이블을 다시 만들어야 하는변 경 내용 저장 사용 안한 체크 해제


사용중인 DB는 복사가 안된다.

C:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\DATA

이파일 경로를 그대로 복사하여 집에있는 같은 루트에 복사하여 붙여 넣으면 된다.

대신 sql 을 멈춰야 한다. 프로세스에서 죽이고 추가 및 복사 하도록하자.





반응형