본문 바로가기
공부/SQL

SQL 기본 문법들

by maemae 2022. 5. 18.
반응형

학교에서 mssql을 공부할 때 기본적으로 사용했던 문법들이다.

기본적으로 스키마(schema)를 dbo를 사용하기 때문에 먼저 mssql 콘솔에 들어간 후 use master를 실행한다.
이것은 그냥 디폴트라고 생각하면 된다.

그 후 나에게 맞는 database 를 생성해야 한다.

명령어는
CREAT DATABASE TestDB;

이렇게 하면 기본 master 데이터베이스 옆에 TestDB 가 생성된다.

이후 테이블을 생성하기 위해
CREAT TABLE dbo.TestTable(
TableID int NOT NULL PRIMARY KEY,
Name varchar (50) NOT NULL DEFAULT ('Instead of NULL'),
)
을 실행시켜준다.

이전에 데이터베이스에서 dbo 스키마를 생성했다면,
CREAT TABLE TestTable(
TableID int NOT NULL PRIMARY KEY,
Name varchar (50) NOT NULL DEFAULT ('Instead of NULL'),
)
을 해도 된다.

이렇게 하면 프라이머리 키로는 int 형으로 TableID, Name 은 varchar 형, 길이는 최대 50 까지로 콜롬이 생성된다.
INSERT INTO TestTable (TableID, Name) VALUES (1, 'Hello');
INSERT INTO TestTable VALUES (2,'Bye');

이런식으로 데이터를 테이블에 집어넣을 수 있다.
쓰는 방법은 다르지만 똑같이 데이터가 들어가며, 프라이머리 키 일 경우 중복이 되면 안되니 주의해야 한다.

SELECT * FROM TestTable;
이제 데이터를 넣었으면 데이터를 삭제할 수 있다.

반응형



DELETE FROM TestTable WHERE Name = 'Hello';
여기서는 TestTable 안에 있는 Name 이 Hello 인 모든 데이터들이 삭제됨을 알 수 있다.

그냥 모든 테이블 안의 데이터를 삭제하고 싶다면
DELETE FROM TestTable ;
이것도 가능하다.

DELETE FROM TestTable
WHERE TableID > 10;
이 명령어는 TableID 값이 10보다 클 경우 한꺼번에 삭제할 수 있다.
CREAT TABLE TestTable(
TableID int NOT NULL PRIMARY KEY,
Name varchar (50) NOT NULL DEFAULT ('Instead of NULL'),
)

기존에 만들어두었던 테이블에서
EXEC sp_rename 'dbo.TestTable,TableID', 'NewID';
를 사용하면 TableID 가 NewID 로 변경됨을 알 수 있다.

기존 테이블에서 새로운 콜롬을 추가하려면
ALTER TABLE TestTable ADD NewColumn int NOT NULL
을 하면 새로운 콜롬 생성이 가능하다.

추가===

CREAT TABLE Order(
...
)

테이블 이름을 Order 로 해서 만들려고 했는데 만들어지지가 않았다.
에러는 [S0001][102] Incorrect syntax near 'Order'

그래서 찾아보니
​CREAT TABLE "Order"(
...
)

이렇게 하면 만들 수 있다.

반응형

댓글