본문 바로가기

DBMS

(116)
[SQL Server] 접속 아이피 구하기 접속 아이피 구하기 SELECT A.SPID, A.LOGINAME, A.LOGIN_TIME, A.LAST_BATCH , B.CLIENT_NET_ADDRESS FROM SYS.SYSPROCESSES AS A INNER JOIN SYS.DM_EXEC_CONNECTIONS AS B ON A.SPID = B.SESSION_ID
[SQL Server] 컬럼 추가, 수정, 삭제하기 컬럼 추가, 수정, 삭제하기 -- 컬럼 추가하기 ALTER TABLE dbo.TEST_TABLE ADD TEST_COLUMN CHAR(10) -- 컬럼 수정하기 ALTER TABLE dbo.TEST_TABLE ALTER COLUMN TEST_COLUMN CHAR(15) -- 컬럼 삭제하기 ALTER TABLE dbo.TEST_TABLE DROP COLUMN TEST_COLUMN ※ 컬럼 수정시 저장된 데이터 길이보다 작은 크기로 수정은 불가능하다. CHAR(10)을 CHAR(5)로 수정하려고 할 때 6바이트 이상의 데이터가 들어가 있으면 수정 불가 원래의 컬럼보다 크게 변경하는 것은 아무때나 가능
[SQL Server] Database Landscape Map Database Landscape Map DBMS 종류가 엄청 많네요. 출처 : http://blogs.the451group.com/information_management/2012/12/20/database-landscape-map-december-2012/
[SQL Server] 파일 그룹별 Object 및 Object의 Index 정보 리스트 파일 그룹별 Object 및 Object의 Index 정보 리스트 sys.filegroups, sys.indexes, sys.database_files, sys.data_spaces 시스템 카탈로그를 사용하여 파일 그룹별 Object 및 Object의 Index 정보를 볼 수 있는 쿼리를 만들어보자. SELECT OBJECT_NAME(i.[object_id]) AS [ObjectName] ,i.[index_id] AS [IndexID] ,i.[name] AS [IndexName] ,i.[type_desc] AS [IndexType] ,i.[data_space_id] AS [DatabaseSpaceID] ,f.[name] AS [FileGroup] ,d.[physical_name] AS [DatabaseF..
[SQL Server] 특수문자 제거하는 함수 특수문자 제거하는 함수 특수문자를 제거하는 함수를 만들어보자. CREATE FUNCTION DBO.REMOVE_SPECIAL_CHARS ( @S VARCHAR(256)) RETURNS VARCHAR(256) BEGIN IF @S IS NULL RETURN NULL DECLARE @S2 VARCHAR(256) DECLARE @L INT DECLARE @P INT SET @S2 = '' SET @L = LEN(@S) SET @P = 1 WHILE @P
[SQL Server] OBJECT_ID 함수를 이용한 개체 존재 여부 확인 OBJECT_ID 함수를 이용해서 개체의 존재 여부를 확인 후 개체를 삭제해 보자. 오라클의 경우 CREATE OR REPLACE 를 사용하면 CREATE 할 때 기존에 같은 이름의 개체가 있으면 REPLACE 하고 개체가 없으면 CREATE 하는 기능이 있지만 MS SQL Server 에는 없다. 테이블에 개체 ID가 있는지 확인해서 지정한 테이블이 있는지 확인한다. 테이블이 있는 경우 삭제되고, 테이블이 없는 경우 DROP TABLE 문이 실행되지 않는다. USE AdventureWorks2008R2; GO IF OBJECT_ID (N'dbo.AWBuildVersion', N'U') IS NOT NULL DROP TABLE dbo.AWBuildVersion; GO OBJECT_ID 함수 내의 dbo...
[Oracle] DECODE 함수 DECODE 함수 DECODE(표현식, 기준값1, 값1 [, 기준값2, 값2, ... , 디폴트 값]) 표현식의 값이 기준값1이면 값1을 출력하고, 기준값2이면 값2를 출력한다. 그리고 기준값이 없으면 디폴트 값을 출력한다. SELECT ename, deptno , DECODE(depono, 10, 'MANAGEMENT' , 20, 'SALES' , 30, 'DESIGN' , 40, 'INTERNATIONAL') dname FROM emp; deptno가 10이면 'MANAGEMENT'를 출력하고, 20이면 'SALES'를 출력한다.
[SQL Server] where 절에서는 별칭(alias)을 사용할 수 없다. where 절에서는 별칭(alias)을 사용할 수 없다. 하지만 order by 절에서는 별칭뿐 아니라 컬럼의 순서에 해당하는 숫자도 사용할 수 있다. CREATE TABLE dbo.ALIAS_TEST ( NUM INT IDENTITY(1,1) , NAME CHAR(6) ) INSERT INTO dbo.ALIAS_TEST VALUES ('BANANA') INSERT INTO dbo.ALIAS_TEST VALUES ('ORANGE') INSERT INTO dbo.ALIAS_TEST VALUES ('APPLE') -- 별칭을 사용하면 열 이름이 잘못 되었다는 오류 발생 SELECT NUM, NAME AS N FROM dbo.ALIAS_TEST WHERE N = 'BANANA' -- 검색 가능 SELECT N..