728x90

[설치파일]

redis-2.4.6-setup-64-bit.exe
0.78MB

[윈도우서비스 등록 및 시작]
(자동으로 등록되고 실행되나 오류발생시 아래처럼 처리한다.)

sc create "redis" binPath= "C:\Program Files\Redis\redis-service.exe"

sc start redis

[GUI Tool]

https://www.electronjs.org/apps/p3x-redis-ui

 

P3X Redis UI | Apps | Electron

A very functional handy database GUI and works in your pocket on the responsive web or as a desktop app.

www.electronjs.org

설치후 

Test Connection 후 아래에 연결 성공 메세지가 뜨면 연결완료

 

https://tech.kakao.com/2016/03/11/redis-scan/

 

Redis의 SCAN은 어떻게 동작하는가?

Redis의 기능 중에 쓰면 안되지만, 그 단맛에 끌려 어쩔 수 없이 치게 되는 명령이 KEYS입니다. KEYS를 쓰는 순간, Redis는 이 명령을 처리하기 위해서 멈춰버립니다. 특히 트래픽이 많은 서버는 이 KEYS

tech.kakao.com

 

반응형
728x90

https://www.slant.co/topics/3237/~best-scalable-in-memory-databases

반응형
728x90


CREATE FUNCTION [dbo].[splitstring_to_table]
(
    @string NVARCHAR(MAX),
    @delimiter CHAR(1)
)
RETURNS @output TABLE(
    data NVARCHAR(MAX)
)
BEGIN
    DECLARE @start INT, @end INT
    SELECT @start = 1, @end = CHARINDEX(@delimiter, @string)

    WHILE @start < LEN(@string) + 1 BEGIN
        IF @end = 0 
            SET @end = LEN(@string) + 1

        INSERT INTO @output (data) 
        VALUES(SUBSTRING(@string, @start, @end - @start))
        SET @start = @end + 1
        SET @end = CHARINDEX(@delimiter, @string, @start)
    END
    RETURN
END

반응형
728x90

Sql Server 2017 의 TCP/IP 설정을 위해 Configration Manager 을 실행해야하는데

찾아지질 않는다 ㅜㅠ

 

실행방법은 윈도우 메뉴 우클릭 해서 나오는 메뉴의 실행을 클릭

 

 

SQLServerManager14.msc 를 입력하고 확인!

 

 

 

반응형
728x90

데이터베이스 속성에서 Security > SQL Server and Windows Authentication mode 를 선택하면된다.

반응형
728x90

Update 쿼리 시 아래와 같은 에러가 발생되었다.

System.Data.SqlClient.SqlException: 'The current transaction cannot be committed and cannot support operations that write to the log file. Roll back the transaction.
Warning: Null value is eliminated by an aggregate or other SET operation.
The statement has been terminated.'

찾아보니 Select 시 SUM 등을 할때 null 인 항목이 있는 경우 에러가 도출된다고 하는데

SET ANSI_WARNINGS OFF

GO


위 명령을 통해 오류는 도출되지 않도록 할수 있다고한다.


하지만 내가 겪은건 희한하게 다른 컬럼을 처리하면 상관없는데

유독 한 컬럼만 문제가 있었다.

컬럼명이 예약어와 동일해서 문제가 생기는줄 알고 열심히 백틱, 더블쿼테이션, 대괄호 처리 를 했지만 오류가 계속 도출..;;


결론은 
해당 컬럼에 Trigger 가 걸려있었고 그 Trigger 에서 발생되는 에러였다.




반응형
728x90

SSMS 실행 (Microsoft SQL Server Management Studio)

1. 윈도우 인증으로 접속


2. 개체 탐색기에서 데이터베이스 선택 후 우클릭 메뉴에서 속성선택


3. 보안탭에서 서버인증의 SQL Server 및 Windows 인증 모드로 변경


4. 보안 > 로그인 > sa 우클릭 메뉴에서 속성


암호 변경


5. 데이터 베이스 다시 시작


반응형
728x90

SQL Server 2016 구성 관리자 실행( SQL Server 2016 Configuration Manager )

좌측 메뉴에서 아래 화면과 같이 선택한 후 우측의 TCP/IP 를 사용 으로 변경



반응형
728x90

두 테이블 간 조인을 할때 NOT IN 조건으로 JOIN 을 할 경우 처리하는 방법이다.

아래 예제 에서는 B 테이블의 value 컬럼의 내용을 NOT IN 조건으로 처리한다.

1. 

SELECT  A.*
FROM    A LEFT JOIN B ON A.value = B.value
WHERE   B.value IS NULL


2.

SELECT  A.*
FROM    A
WHERE   value NOT IN
(
SELECT  value
FROM    B
)

3.

SELECT  A.*
FROM    A
WHERE   NOT EXISTS
(
SELECT  value
FROM    B
WHERE   B.value = A.value
)


value 컬럼이 인덱스처리가 된 경우 성능차이는 없다고 한다.

그러나 value 컬럼이 NOT NULL임을 보장하지 않는 경우 하위 쿼리 결과 집합에 NULL 값이 있는지 여부에 따라 

다른 결과가 생성되므로 NOT IN 대신 LEFT JOIN / IS NULL 또는 NOT EXISTS를 사용해야한다.

참고

https://explainextended.com/2009/09/17/not-in-vs-not-exists-vs-left-join-is-null-oracle/

반응형
728x90

TEST 테이블의 A 컬럼에 아래와 같이 데이터가 있을 때

A


A 컬럼의 데이터를 모두 ,(콤마) 로 연결하여 하나의 데이터("가,나,다")로 나타내고 싶은 경우

아래 처럼 listagg 를 이용해 쿼리하면 된다.


SELECT LISTAGG(A,' ,') RESULT FROM TEST


결과>

RESULT

가,나,다



반응형

+ Recent posts