본문 바로가기

데이터베이스57

무료 SQLite 툴 안드로이드 개발 중에 데이터베이스(SQLite) 사용을 위해서 파이어폭스에 플러그인 된 프로그램을 사용했었습니다.그렇지만 이놈의 툴이 너무 투박하고 불편해서 다른 무료 툴을 찾다가 DB Browser for SQLite 를 찾았습니다.UI도 괜찮고 사용도 편하게 되어있는 것으로 생각됩니다. DB Browser for SQLite 다운로드 사이트https://github.com/sqlitebrowser/sqlitebrowser/releases DB Browser for SQLite 실행 화면 2016. 1. 26.
DBDesigner에서 Relationship 모양 변경하기 ERD를 작성하기 위해 무료인 DBDesigner를 사용하고 있습니다.약간의 불편함이 있지만, 무료 툴이라는 점을 감안하면 매우 만족 할만 합니다. DBDesigner를 설치하고 Relationship을 생성하면 아래의 이미지와 같이 Relationship이 표시됩니다. 우리는 Table Relationship을 일명 닭발로 관계(1:1, 1:n 등)를 표시하는데 좀 이질적입니다.DBDesigner에서 제공하는 Relationship 모양은 총 4가지이며, 변경하는 방법은 아래와 같습니다. 1. EER(1) 메뉴 Display > Notation > EER (2) 아래와 같이 Relationship이 표시됨 2. EER[1,n](1) 메뉴 Display > Notation > EER[1,n] (2) 아래.. 2016. 1. 20.
Collation(문자 정렬) 충돌 해결 방법 테이블의 컬럼의 Collation(문자정렬)이 서로 다른 경우 아래와 같이 오류가 발생합니다. Cannot resolve the collation conflict between "Korean_Wansung_CI_AS" and "SQL_Latin1_General_CP1_CI_AS" in the equal to operation. 1. 현재 데이터 베이스의 기본 Collation(문자정렬) 확인 하기 SELECT SERVERPROPERTY('collation') ※ MSSQL의 전체 Collation 조회하기 SELECT * FROM ::fn_helpcollations() 2. 컬럼에 특정 Collation(문자정렬)을 지정하여 테이블 생성하기 - 아래의 쿼리는 한글완성형으로 Collation(문자정렬)을 .. 2016. 1. 18.
MS SQL 버전 별 서비스팩 목록 MS SQL 버전 별 서비스 팩(SP)입니다. RTMSP1 SP2 SP3 SP4 SQL Server 2014 12.0.2000.8 12.0.4100.1 or 12.1.4100.1 SQL Server 2012 11.0.2100.60 11.0.3000.0 or 11.1.3000.0 11.0.5058.0 or 11.2.5058.0 11.0.6020.0 or 11.3.6020.0 SQL Server 2008 R2 10.50.1600.1 10.50.2500.0 or 10.51.2500.0 10.50.4000.0 or 10.52.4000.0 10.50.6000.34 or 10.53.6000.34 SQL Server 2008 10.0.1600.22 10.0.2531.0 or 10.1.2531.0 10.0.4000.0.. 2016. 1. 8.
MSSQL sa 계정 잠금 해제 MSSQL에서 sa 계정의 잠금 해제하는 방법입니다. 1. SQL Server Management Studio에서 Security > Logins에서 사용자를 확인 할 수 있습니다. 2. sa 계정을 선택 후 마우스 오른쪽을 클릭하여 팝업메뉴에서 Properties를 클릭합니다. 3. 속성화면에서 Status를 선택하고, Login의 Enabled 라디오버튼을 선택 후 Ok버튼을 클릭하면 sa 계정 잠금이 해제됩니다. 2016. 1. 5.
MSSQL 영문 대소문자 구분 검색하기. MSSQL은 기본적으로 대소문자를 구분하지 않습니다. 설치 때 언어 설정에서 지정 할 수 있는 것으로 알고 있지만, 디폴트로 설치를 하면 Where 절에서 대소문자를 구분하지 않고 검색이됩니다. 대소문자를 구분하여 검색하시려면 아래의 Where 절을 이용하시면 됩니다. -- Equal 조건 SELECT * FROM TABLE_NAME WHERE COLUMN_NAME COLLATE Korean_Wansung_CS_AS = 'Name' -- LIKE 조건 SELECT * FROM TABLE_NAME WHERE COLUMN_NAME COLLATE Korean_Wansung_CS_AS LIKE 'Name%' -- 정렬 SELECT * FROM TABLE_NAME ORDER By COLUMN_NAME COLLAT.. 2015. 11. 23.
MSSQL Export (내보내기 마법사 사용) 개발 때 데이타베이스 작업을 함께 하는 경우가 많습니다.로컬 데이타베이스에 생성한 데이타를 다른 장비에 Import하여 사용 할 때가 종종 있는데, 내 데이타베이스에서 특정 테이블의 데이타를 Export 받는 방법을 내보내기 마법사를 이용하여 사용하는 방법을 알아보겠습니다. 1. 데이타베이스를 선택 후 마우스 오른쪽을 클릭하여 팝업 메뉴를 열고, 팝업 메뉴의 Tasks > Export Data... 메뉴를 클릭합니다. 2. 가져오기 & 내려받기 마법사(Import and Export Wizard)에 대한 간략한 내용이 표시된다, Next를 클릭한다. 3. Next 버튼을 클릭한다.(필요에 따라서 Data Source, Server Name, Database를 지정한다.) 4. 내보내기 할 때 형식을 지정.. 2015. 11. 20.
MSSQL DB 파일(*.mdf, *.ldf) 이동하기 서버의 하드디스크 용량 등의 문제로 간혹 DB 파일을 물리적으로 이동해야 할 경우 있습니다. MS SQL의 DB 파일 인 *.mdf, *.ldf 파일을 C:에서 D:로 이동하는 방법입니다. 1.Microsoft SQL Server Management Studio에서 데이터베이스를 선택하고, 마우스 우측 버튼을 클릭하면 팝업 메뉴가 표시되며, Properties를 클릭합니다. 2. Database Properties의 좌측 상단의 메뉴 중 Files를 선택하여, 데이터베이스의 DB파일을 확인합니다. 3. 데이터베이스 파일을 Detach(분리) 합니다. sp_detach_db [ @dbname= ] 'database_name' [ , [ @skipchecks= ] 'skipchecks' ] [ , [ @ke.. 2015. 9. 15.
MSSQL - 프로시저, 함수 내용 보기 프로시저 또는 함수의 내용을 검색하는 쿼리입니다. 특정 테이블 또는 뷰를 사용하고 있는 프로시저나 함수를 찾는데 도움이 됩니다. SELECT ROUTINE_NAME, ROUTINE_DEFINITION FROM INFORMATION_SCHEMA.ROUTINES WHERE ROUTINE_TYPE = 'PROCEDURE' OR ROUTINE_TYPE = 'FUNCTION' ORDER BY ROUTINE_NAME [실행 결과] 2015. 7. 9.
MSSQL - Like 문에 정규식 사용하기 MSSQL에서는 Like문에 정규식을 사용 할 수 있어 다양하게 데이타를 검색이 가능합니다. Like문에 "[" 와 "]" 사이에 정규식을 사용할 수 있으며, 아래에 몇가지 예를 소개하겠습니다. 1. 소문자와 대문자 영어로 시작하는 데이타 조회 - 정규식 : [a-zA-Z] - LIKE 조건 : [a-zA-Z]% with test(test_text) as ( select 'Korea' union select '12345' union select '.Net 2010' union select '10 years ago' ) select * from test where test_text like '[a-zA-Z]%' 2. 소문자와 대문자 영어로 시작하지 않는 데이타 조회 - 정규식 : [^a-zA-Z] - LI.. 2015. 5. 28.
MSSQL - Index Rebuild (인덱스 리빌드) 쿼리 인덱스 리빌딩은 데이터베이스에 많은 데이터가 오랜기간동안 쌓였을 경우 쿼리를 실행하면 속도가 늦어지는 경우가 발생합니다. 실행계획은 분석하여 인텍스를 정확하게 수행이 되더라도 속도 개선이 안될 경우 인덱스를 리빌드하여 다시 수행하면 속도 개선의 효과를 볼 수도 있습니다. 즉, 하드디스크의 조각 모음을 수행하여 컴퓨터 속도를 향상시키는 것처럼 하나의 인덱스의 데이터가 분산된 것을 디스크상에 뭉쳐주는 역할을 하여 속도 개선이 이루어진다. DECLARE @i int, @sql varchar(1000) DECLARE @tablename varchar(1000),@ownerName varchar(1000) SET @i = 1 DECLARE DB_Cursor CURSOR FOR SELECT TABLE_SCHEMA,.. 2015. 4. 15.
MSSQL - 16진수( HEX) 문자 숫자로 변경 숫자를 16진수로 문자로 변경하는 쿼리 예제입니다. SELECT CONVERT(int, CONVERT(varbinary, '0xFF', 1)) 2015. 4. 15.
MSSQL - sysadmin role 복구하기 실수로 사용자의 "sysadmin" Role을 제거하는 경우 복원하는 방법입니다. 1. MS-SQL을 중지합니다. 2. Command Prompt를 관리자 모드로 실행합니다. 3. MS-SQL가 설치된 폴더의 "Binn"으로 이동합니다. 4. MS-SQL을 최소 구성으로 실행합니다. sqlservr.exe -f -s DB_NAME 5. Command Prompt를 관리자 모드로 하나 더 실행합니다. 6. MS-SQL가 설치된 폴더의 "Binn"으로 이동합니다. 7. sqlcmd를 실행합니다. sqlcmd -S Login_Name 8. "sysadmin" Role을 부여합니다. EXEC master..sp_addsrvrolemember @loginame=N'Login_Name', @rolename=N'sy.. 2015. 4. 15.
MSSQL - 세션정보 얻기 아래의 쿼리를 실행하여 사용자별 세센정보를 확인 할 수 있습니다. SELECT * FROM sys.dm_exec_sessions 2015. 4. 15.
MSSQL - 개행문자 변경하기 간혹 데이터베이스의 개행문자를 " " 등으로 변경해야 할 경우가 있다. C#이나 Java 코드에서 변경해도 되지만 난 쿼리에서 변경하는 방법을 쓰곤합니다. 아래의 쿼리는 개행문자를 다른 문자로 변환하는 아주 간단한 쿼리입니다. SELECT REPLACE(ColumnName, CHAR(13)+CHAR(10), ' ') FROM TableName 2015. 4. 15.