DB 57

임시테이블의 OBJECT_ID 얻기

OBJECT_ID 함수를 이용하여 해당 테이블이 존재하는지 여부를 검사할 때 다음과 같이 사용하게 됩니다. IF EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'MY_TABLE') AND type in (N'U')) -- 'MY_TABLE' 테이블이 존재함. 하지만, 임시 테이블의 존재 여부를 검사할 때는 그냥 위와 같이 하면 테이블을 100% 찾을 수 없다고 나옵니다. 임시 테이블은 TEMPDB에 생성되므로 그곳에서 테이블에 대한 OBJECT_ID를 얻어와야 합니다. 따라서 다음과 같이 코드를 수정해야만 합니다. IF EXISTS (SELECT * FROM tempdb.sys.objects WHERE object_id = OBJECT_I..

DB/MS-SQL 2008.06.10

복구 모델(Recovery Model)

# 복구 모델이란? 데이터베이스에 트랜잭션이 발생하였을 때 트랜잭션을 로그에 기록하는 범위를 지정해 놓은 것입니다. 장애 발생시 데이터 손실을 취소화하기 위한 계획을 세우는데 필수적으로 고려해야할 부분으로 데이터베이스 백업과 밀접한 관계가 있습니다. # 데이터베이스 복구 모델의 종류 및 차이점 1) 단순(Simple) - 트랜잭션 로그를 자동으로 삭제 - 데이터가 중요하지 않고, 쉽게 재생성이 가능한 경우 - 테스트나 개발에 사용하는 DB - 마지막 백업 이후의 데이터는 복구 불가능. 백업을 하지 않은 경우에는 데이터 복구 불가능 - 트랜잭션 로그를 백업할 수 없음 2) 대량 로그(Bulk Logged) - 데이터가 중요하지만, 대량의 벌크 로그는 로그를 남기지 않도록 할 경우(BULK INSERT, C..

DB/MS-SQL 2008.05.14

SELECT @@VERSION 의 빌드(BUILD) 번호로 서비스팩 및 보안패치 현황 파악하기.

MS-SQL에서 다음과 같은 쿼리를 이용하여 SQL 서버의 버전을 확인할 수 있습니다. SELECT @@VERSION하지만, 위에서 나오는 결과로는 서비스 팩을 어디까지 설정하였고, 패치는 어느 버전까지 적용되어 있는지는 알 수가 없습니다. SQL 서버의 버전 정보를 확인할 때, 빌드 번호를 통하여 서비스팩의 현황 및 어느 버전까지 보안 패치가 적용되어 있는지 다음 사이트에서 확인하실 수 있습니다. http://www.sqlsecurity.com/FAQs/SQLServerVersionDatabase/tabid/63/Default.aspx 가령, MS-SQL Server 2000을 사용중이고, 빌드 번호가 2187이라면 SQL 2000 sp4가 설치되어 있고, 914384/898709/915065/9153..

DB/MS-SQL 2008.03.12

유용한 SQL 도구 - SQL Prompt

Red-gate 사가 제작한 SQL Prompt라는 프로그램이 있습니다. Visual Studio에 연동되어 동작하는 것으로 아래 그림을 보시면 그 효과를 바로 느낄 수 있습니다. 아래 제작사 홈페이지에 소개된 기능입니다. Table/View/Column/Sproc name completion JOIN/JOIN ON syntax completion Object creation-SQL viewing pane Cross-database queries Distributed queries with linked SQL Server instances Scripted-but-unsaved objects included in candidate list Cursors, cursor variables and related..

DB/MS-SQL 2008.02.26

SQL 2008에서 바뀌는 Database 관리 명령.

SQL 2005 까지는 Database 관리를 위하여 저장 프로시저를 이용했습니다. (sp_attach_db, sp_rename_db, sp_dboption 등). 그러나 2008부터는 이 저장 프로시저들을 사용할 수 없고, CREATE DATABASE나 ALTER DATABASE를 이용해야 합니다. 개인적인 의견으로는 저장 프로시저를 사용하는 것보다 훨씬 직관적이고 좋은것 같습니다. 아래 내용은 mssqltips에서 퍼온 내용입니다. 영문이지만 주요 내용을 보는데는 큰 불편이 없을 것이라 생각됩니다. (번역하기기 귀찮아서요 ^^) Migrate sp_attach_db syntax to CREATE DATABASE The sp_attach_db is a command to attach a database..

DB/MS-SQL 2007.11.13

FreeBSD 6.x에서 MySQL 5.0.x 설치기

0. 최신 포트 준비 cvsup -g -L 2 ports-supfile 1. MySQL 5.0.x 버전 설치 # cd /usr/ports/databases/mysql50-server # make WITH_CHARSET=euckr install clean 2. portupgrade를 위해 pkgtools.conf 수정 # vi /usr/local/etc/pkgtools.conf MAKE_ARGS = { 이 부분에 추가 'databases/mysql5*' => [ 'WITH_CHARSET=euckr BUILD_OPTIMIZED=yes BUILD_STATIC=yes' ], 3. MySQL을 구동을 위한 기본 DB 생성 # /usr/local/bin/mysql_install_db --user=mysql # cd..

DB/MySQL 2007.11.12
728x90