관리 메뉴

nalaolla

테이블 이름, 구조 보기 본문

MS-SQL

테이블 이름, 구조 보기

날아올라↗↗ 2015. 12. 20. 15:48
728x90

● 테이블 이름, 구조 보기 (DB선택하고, EM에서도 실습)

 

(1) Master DB 또는 mydb 등이 가지고 있는 서버의 정보보기 
예) Use master
예) Use mydb

☞ 서버의 정보 보기

예) Select * from sysobjects order by name

☞ sysobjects(시스템에 관련)order by name(이름 별로)

예) Select name,id,uid,type, userstat from sysobjects order by name

 

(2) DB에 있는 테이블 정보보기 (SP_를 Help로 보는 시간을 가진다)
형식)SP_TABLES 테이블명,소유자명,DB명
예) SP_TABLES
예) SP_TABLES gogek, dbo, mydb
예) SP_TABLES null, dbo
Oracle의 select * from tab;

 

(3) Table의 칼럼정보 보기
형식)SP_COLUMNS 테이블명
예) SP_COLUMNS gogek

 

(4) 현재 선택된 DB에 접속하여 사용할 수 있는 모든유저명 보기
예) select * from sysusers

 

(5) 오브젝트이름이나 칼럼명 바꾸기(일반유저가 사용가능)

형식1)sp_rename old테이블명, new테이블명
예) sp_rename gogek, go
sp_rename go, gogek

☞ gogek을 go로 바꾸기

형식2)sp_rename '테이블명.old칼럼명', new칼럼명
예) sp_rename 'gogek.gobun', gobun1
select * from gogek
sp_rename 'gogek.gobun1', gobun

 

(6) 데이타베이스명 바꾸기
형식)sp_renamedb olddb명, newdb명
예) sp_renamedb mydb, youdb
sp_renamedb youdb, mydb

☞ 기본 기법이 멀티 유저(user) 이기에 단독 user 로 바꿔져야 한다.

단 Server의 mydb \ Properties \ Option에서 Single_User로 선택되어야 한다
또한 mydb가 사용하지 않아야 한다 (mydb가 Query에서 선택되어 있지 않아야 한다)

 

(7) sp_명령으로 Login의 만들기 (User와 혼동해서는 안된다)
☞ 간단히 말해 동호회에서 사용자명을 생각하면된다.
로그인 해서 동호회 가입시 다른 사용자명을 사용할수 있다는 걸..
간단히 permissions의 개념도 한다
☞ 오른쪽 마우스를 통해서 propertion 에서 권한을 줄 수도 있다.

 

(8) 패스워드 바꾸기 (매우 중요.....)
형식)sp_password old, new [, login_id]
예) SA가 다른사람의 패스워드를 바꿀때는 login id를 사용한다.
현재 접속되어 있는 사람이 패스워드를 바꿀때는 login id는 생략가능하다.
sp_password null, '123', SA
sp_password '123', null, SA

SA에 대한 소유권을 다른 유저에게 이전할 수 있다(단 Master DB는 이전할 수 없다) 
DB를 만들수 있는 사람은 SA만 가능하므로 모든 DB의 소유권은 SA가 갖는다.
그러나 SA가 바쁜일로 특정 DB를 관리할 수 없는 경우 해당 DB에 대한 소유권을
다른 유저에게 이전 할 수 있다. 
소유권을 이전받은 유저는 해당 DB에 대해서만 모든 관리 권한을 갖는다. 
물론 소유권을 이전한 SA도 양도한 DB를 관리할 수 있다. 
주)SA는 모든일을 할 수 있다.

 

(9) 소유권이전(SA로 접속),
형식> sp_changedbowner login_id [, true]
예) sp_changedbowner ywh , true

 

(10) 소유권 가져오기(SA로 접속)-SA가 다시 SA로 주면 된다. 
예) sp_changedbowner sa , true

728x90