«dynamic-sql» 태그된 질문

문자열 연결 작업을 사용하여 런타임에 쿼리를 생성하고 해당 문자열에서 쿼리를 실행합니다.

4
TSQL에서 테이블 작성 스크립트를 생성하는 방법이 있습니까?
T-SQL에서만 기존 테이블에서 작성 스크립트를 생성하는 방법이 있습니까 (T-SQL에는 SMO에 대한 액세스 권한이 없으므로 SMO를 사용하지 않음). 테이블 이름을 받고 주어진 테이블에 대한 작성 스크립트가 포함 된 문자열을 반환하는 저장 프로 시저를 가정 해 봅시다. 이제 다른 방법으로 접근 할 수 있으므로 내가 직면하고있는 상황을 설명하겠습니다. 수십 개의 데이터베이스가있는 인스턴스가 …

3
SQL 쿼리 코드 반복을 방지하기 위해 문자열을 연결하거나 절차를 수행하는 대안?
면책 조항 : 업무 시간의 일부만 데이터베이스를 사용하는 사람으로 저와 함께하십시오. (대부분 저는 C ++ 프로그래밍 작업을 수행하지만 매월마다 Oracle 데이터베이스에서 무언가를 검색 / 수정 / 추가해야합니다.) 저는 임시 쿼리와 응용 프로그램에 내장 된 쿼리 모두에 대해 복잡한 SQL 쿼리를 반복해서 작성해야했습니다. 여기서는 쿼리의 대부분이 "코드"를 반복했습니다. 기존의 프로그래밍 언어와 …

2
저장 프로 시저 내에서이 쿼리에 대해 SQL 주입이 발생하지 않는 이유는 무엇입니까?
다음 저장 프로 시저를 만들었습니다. ALTER PROCEDURE usp_actorBirthdays (@nameString nvarchar(100), @actorgender nvarchar(100)) AS SELECT ActorDOB, ActorName FROM tblActor WHERE ActorName LIKE '%' + @nameString + '%' AND ActorGender = @actorgender 이제 이런 식으로 시도했습니다. 어쩌면 나는 이것을 잘못하고 있지만 그러한 절차가 SQL 주입을 막을 수 있기를 원합니다. EXEC usp_actorBirthdays 'Tom', …


2
동적 SQL을 사용하여 지정된 데이터베이스에서 View를 작성 하시겠습니까?
다른 데이터베이스에서 뷰를 삭제하고 작성하기 위해 동적 SQL을 작성하고 있습니다. 그래서 나는 썼다 : set @CreateViewStatement = ' USE ['+ @DB +']; CREATE VIEW [dbo].[MyTable] AS SELECT ........something exec (@CreateViewStatement) 그것은 나에게 오류를 준다 : 'CREATE VIEW'는 쿼리 일괄 처리에서 첫 번째 문이어야합니다. USE DATABASE 문을 제거하면 정상적으로 작동하지만 데이터베이스가 …

1
사용자 공유 쿼리 : 동적 SQL과 SQLCMD
foo.sqlDB 기술 지원 팀 (고객 구성 및 이와 유사한 사항)이 공유 할 여러 쿼리 를 리팩터링하고 문서화 해야합니다. 각 고객마다 고유의 서버와 데이터베이스가있는 경우 정기적으로 제공되는 티켓 유형이 있지만, 그렇지 않으면 전체적으로 스키마가 동일합니다. 저장 프로시 저는 현재 옵션이 아닙니다. 동적 또는 SQLCMD를 사용할 지에 대해 토론하고 있는데 SQL Server에서 …


2
TSQL을 사용하여 데이터베이스를 동적으로 변경하는 방법
SSMS 컨텍스트를 동적 SQL에 지정된 데이터베이스로 동적으로 변경하는 데 문제가 있습니다. EXEC sys.sp_executesql N'USE db1 ' ; 성공적으로 실행되지만 SSMS의 데이터베이스 컨텍스트는 변경되지 않습니다. 위와 같이 약간의 수정을 시도했습니다. DECLARE @sql NVARCHAR(100) DECLARE @db NVARCHAR(50) SET @db = N'db1' SET @sql = N'Use ' + @db EXEC sp_executesql @sql 다시 …

2
sp_executesql을 기본적으로 구성 / 사용할 수 있습니까?
SQL Server에 대해 매우 동적 인 SQL 쿼리를 사용하는 응용 프로그램을 찾고 있습니다. 매우 이상하고 복잡한 방식으로 구성된 쿼리를 보면 다른 이야기이지만, 내가 스스로를 알아낼 수없는 (너무 멍청한) 이유가 있다고 말합니다. 쿼리가 함께 포장되어 코드 sp_executesql. 그러나 추적 할 때 많은 쿼리가 래핑 된 것을 볼 수 있습니다 sp_executesql. 전체 …

1
동적으로 작성된 테이블 데이터를 리턴하기위한 스토어드 프로 시저
간단히 이야기하자면, 우리는 측량 시스템이있는 외부 공급 업체와 협력하고 있습니다. 새로운 측량을 만들 때 시스템이 새로운 테이블을 만들 때 시스템이 반드시 최상으로 설계된 것은 아닙니다. Tables ____ Library_1 -- table for Survey 1 SurveyId int InstanceId int Q_1 varchar(50) Library_2 -- table for Survey 2 SurveyId int InstanceId int Q_2 …

2
열의 별칭을 동적으로 지정하려면 어떻게합니까?
가변적으로 명명 된 20 개의 열이있는 테이블 (나에 의해 설계되지 않은)이 있습니다. 즉,보고있는 레코드 유형에 따라 해당 열 이름이 변경 될 수 있습니다. 가능한 열 이름은 다른 테이블에 저장되므로 매우 쉽게 쿼리 할 수 ​​있습니다. 따라서 실제로 찾고있는 쿼리는 다음과 같습니다. SELECT Col1 AS (SELECT ColName FROM Names WHERE ColNum …

1
sp_execute는 'int'유형의 매개 변수 '@handle'을 예상합니다.
대상 데이터베이스에 테이블이 있으면 저장 프로 시저를 체크인하려고합니다. 그렇지 않은 경우 소스 데이터베이스에서 information_schema 테이블을 사용하여 테이블을 작성합니다. 그러나 sp_execute를 사용하여 테이블이 존재하면 다시 가져 오려고하면 'int'유형의 '@handle'매개 변수가 필요합니다.라는 오류가 발생합니다. @handle 매개 변수를 사용하지 않습니다. 누군가이 오류의 의미와 내가받는 이유를 말해 줄 수 있습니까? 내 코드의 관련 부분은 …

1
sp_prepexec (sp_execute) 및 sp_executeSQL
문제의 핵심 : 실제 저장 프로시 저는 임시 테이블 캐싱을 구현하는 유일한 메커니즘이거나 시스템 저장 프로 시저 (예 : sp_executeSQL/) sp_execute를 활용 하는 유일한 메커니즘 입니까? 나는 DBA가 아니므로 작은 단어를 사용하십시오. 우리의 응용 프로그램은 프로파일에서, 내가 통해 모든 SQL 실행을 참조하십시오 이상 준비된 문 보냅니다 sp_prepexec실행 모두를위한 시스템 프로 …
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.