반응형

WorkaHolic/MSSQL 87

MSSQL 문자열 중에서 숫자만 골라 내는 함수

전화번호 011-9874-1111 에서 01198741111 만 얻어 낼때 사용 하시면 유용할 듯 합니다. ==================================================== create function make_num( @cur_num varchar(50) ) returns varchar(50) as begin declare @i as int declare @temp_num as varchar(50) set @cur_num = replace(@cur_num,'.','') set @cur_num = replace(@cur_num,',','') set @cur_num = replace(@cur_num,'+','') set @cur_num = replace(@cur_num,'-',..

WorkaHolic/MSSQL 2010.04.08

SQL서버로 메일 보내기 ext.MSSQL2000

출처 : http://swynk.com Writer : Paul Wong (pwong@wesync.com) Date : 12/4/00 12:39:33 PM 순수하게 SQL서버로 메일을 보내기 입니다. 저는 SQL2000으로 테스트 해 보았는데 아주 잘 돌아 가네요.. sp_oa~~~라는 방법으로 데이터를 처리하는데 흥미 있군요. 역시나 방법은 찾으면 있난 봅니다. 도움 되시길 바랍니다. --실행하기 exec pSendMail '보내는 사람 멜 주소', '받을사람멜주소', '제목','내용' --저장 프로시져 생성 create procedure pSendMail(@From varchar(50), @To varchar(50), @Subject varchar(255), @Body varchar(8000)) as..

WorkaHolic/MSSQL 2010.04.08

MSSQL SP_EXECUTESQL

문자열을 실행하려면 EXECUTE 문 대신 sp_executesql을 사용하는 것이 좋습니다. sp_executesql은 매개 변수 대체를 지원하므로 EXECUTE보다 융통성이 뛰어납니다. 또한 sp_executesql은 SQL Server 2005 에서 재사용이 쉬운 실행 계획을 생성하므로 EXECUTE 문보다 효율적입니다. sp_executesql은 Transact-SQL 문자열에 지정된 매개 변수의 매개 변수 값 대체를 지원하지만 EXECUTE 문은 지원하지 않습니다. 그러므로 sp_executesql로 생성된 Transact-SQL 문자열은 EXECUTE 문으로 생성된 것보다 더 비슷합니다. SQL Server 쿼리 최적화 프로그램은 sp_executesql의 Transact-SQL 문을 이전에 ..

WorkaHolic/MSSQL 2010.04.08

MSSQL 동적 SQL의 축복과 저주

원문 : SQL Server MVP Erland Sommarskog의 SQL Text 번역 : quest, ASP MVP (microsoft.public.kr.asp.qna) Microsoft SQL 서버에 대한 여러 뉴스그룹에서 왜 다음 쿼리가 불가능한지를 문의하는 사람들을 종종 보게 된다.:SELECT * FROM @tablename SELECT @colname FROM tbl SELECT * FROM tbl WHERE x IN (@list) 많은 경우에 간략한 예와 함께 동적 SQL을 사용하세요 라는 답변이 달리곤 하지만, 답변하는 사람들조차 동적 SQL 문의 사용시에 주의해야 할 사항에 대한 언급을 잊는 경우가 많다. 이 기사에서는 MS SQL Server의 저장 프로시저에서 동적 SQL의 사용에..

WorkaHolic/MSSQL 2010.04.08

MSSQL T-SQL

----------------------------------------------------------------- sql문(DDL)으로 테이블을 생성했는 데(아주 많이) 이 테이블들이 master 데이타베이스에 생겨서 어떻게 할 수 없을까 고민했었는 데, 무엇이 문제였는 지 알게 해준 고마운 글이다. 역시 기본이 부족하다.... [출처]http://blog.naver.com/blue7red/100045287422 ----------------------------------------------------------------- 1.기본적인 T-SQL구문 [with ] select select_list [ into new_table ] [from table_source] [where search_co..

WorkaHolic/MSSQL 2010.02.25

MSSQL SET 명령문

--------------------------------------------------------------------------- SET 명령문을 찾다 발견한 자료이다. 정리가 깔끔하게 되어 있어서 한 눈에 보기 좋다. 전부 확인 해 보지 않아서 버전에 따라 틀린 내용이 있을 지,없을 지 확신이 없지만, 혹시 알게된 내용이 있다면 덧글에 남기도록 하겠다. [출처] 기본값) SQL-92 설정 문 SET ANSI_DEFAULTS 몇몇 SQL-92 표준 동작을 집합적으로 지정.이 옵션에 SQL-92 표준을 준수하는 데 필요한 모든 옵션이 포함되지는 않는다. SET ANSI_NULL_DFLT_OFF 설정은 CREATE TABLE과 ALTER TABLE 문에 열의 Null 허용이 지정되어 있지 않을 때 새 ..

WorkaHolic/MSSQL 2010.02.25

MSSQL TRIGGER

1.트리거의 개념 (1)트리거의 개요 -제약조건과 더불어서 데이터의 무결성을 위한 또다른 기능 -DML트리거와 DDL트리거(SQL서버2005에서 새롭게 나왔다) 두가지가 있다. -테이블 또는 뷰에 부착되는 프로그램코드 -저장프로시저와 비슷하게 작동하지만 직접 실행시킬 수 없고 오직 해당 테이블이나 뷰에 이벤트(입력,수정,삭제)가 발생할 경우에만 실행된다. -저장프로시저와 달리 매개변수나 리턴값을 사용할 수 없다. (2)트리거 CREATE TRIGGER름 ON 부착할테이블이름 //부착테이블지정 AFTER( 혹은 BEFORE) DELETE( 혹은 UPDATE , INSERT) //부착테이블과의 관계에서 지정해위 작동시기 지정 AS 동작할 내용 //행위 지정 USE tempdb; CREATE TABLE tes..

WorkaHolic/MSSQL 2010.02.25

MSSQL SET TRANSACTION ISOLATION LEVEL READ UNCOMMITTED

SET TRANSACTION ISOLATION LEVEL한 연결에서 실행한 모든 Microsoft SQL Server™ SELECT 문에 대해 기본 트랜잭션 잠금 동작을 제어합니다. 구문SET TRANSACTION ISOLATION LEVEL { READ COMMITTED | READ UNCOMMITTED | REPEATABLE READ | SERIALIZABLE } 인수READ COMMITTED 데이터를 읽을 때는 공유 잠금이 유지되도록 해서 커밋되지 않은 데이터 읽기가 이루어지지 않도록 지정하지만, 트랜잭션이 끝나기 전에 데이터가 변경되어 반복하지 않는 읽기 또는 팬텀 데이터가 만들어질 수 있습니다. 이 옵션은 SQL Server의 기본값입니다. READ UNCOMMITTED 불필요한 읽기나 격리 수..

WorkaHolic/MSSQL 2010.02.25

MSSQL SET NOCOUNT ON

SET NOCOUNT Transact-SQL 문의 영향을 받은 행 수를 나타내는 메시지가 결과의 일부로 반환되지 않도록 합니다. 구문 SET NOCOUNT { ON | OFF } 비고 SET NOCOUNT 옵션을 ON으로 설정하면, Transact-SQL 문의 영향을 받은 행 수를 나타내는 수가 반환되지 않습니다. SET NOCOUNT 옵션을 OFF로 설정하면 이 수가 반환됩니다. SET NOCOUNT 옵션이 ON으로 설정되어 있을 때도 @@ROWCOUNT 함수는 업데이트됩니다. SET NOCOUNT 옵션을 ON으로 설정하면 저장 프로시저의 각 명령문에 대해 클라이언트에게 DONE_IN_PROC 메시지를 보내지 않습니다. Microsoft® SQL Server™와 함께 제공된 유틸리티를 사용해 쿼리를 실..

WorkaHolic/MSSQL 2010.02.25

MSSQL QUOTED_IDENTIFIER

구문 SET QUOTED_IDENTIFIER { ON | OFF } SET QUOTED_IDENTIFIER 옵션을 ON(기본값)으로 설정하면 큰따옴표로 구분된 모든 문자열이 개체 식별자로 해석됩니다. 따라서 따옴표 붙은 식별자는 Transact-SQL 식별자 규칙을 따르지 않아도 됩니다. 따옴표 붙은 식별자는 예약 키워드일 수 있으며 Transact-SQL 식별자에서 일반적으로 허용되지 않는 문자를 포함할 수 있습니다. 큰따옴표로는 리터럴 문자열 식을 구분할 수 없습니다. 리터럴 문자열을 묶으려면 작은따옴표를 사용해야 합니다. 리터럴 문자열에 작은따옴표(')가 있으면 두 개의 작은따옴표(")로 나타내야 합니다. 데이터베이스의 개체 이름에 예약된 키워드를 사용할 경우 SET QUOTED_IDENTIFIER..

WorkaHolic/MSSQL 2010.02.25
반응형