2009-02-10 6 views
0

동적 SQL 문을 작성하는 방법. 매개 변수 중 하나로 주어진 테이블을 업데이트합니다. 여기에, 나는 "Set Column1 = Value ....."열을 테이블에 따라 다르게 사용할 수 없다고 생각합니다.테이블을 업데이트하는 동적 SQL!

+0

이 질문은 http://stackoverflow.com/questions/531486/dynamic-sql-for-updating-any-table에서 정확한 복제본을 갖고 있습니다. 이미 닫힌 것처럼이 중 하나를 닫고 유지하도록 투표했습니다. 투표. –

+0

사용중인 데이터베이스 소프트웨어와 응용 프로그램 계층에서 사용중인 것을 제공 할 수 있습니까? – Elijah

답변

0

더 많은 컨텍스트를 제공 할 수 있습니까? Perl, PHP 또는 Python과 같은 스크립트에서 임의의 SQL 문을 실행하고 있습니까? 명령 줄 .sql 스크립트가 작동하도록하려고합니까? 어떤 데이터베이스 서버에서 작업하고 있습니까?

솔루션은 상황에 따라 크게 다를 수 있습니다.

1

이것은 매우 좋지 않습니다. 그런 일을하는 데이터베이스로 막대한 혼란을 야기 할 수 있습니다. 나는 그것을 허용 할 사람을 상상할 수 없다. 테이블에 대한 세부 사항을 제대로 알고 있어야 테이블에 어떤 필드가 필요한지, 어떤 필드에 기본값이 있는지 알고 있어야합니다. 각 필드에 어떤 종류의 정보와 데이터 유형이 있어야 데이터베이스에 불량 데이터를 보내지 않아야 하는지를 알아야합니다. 모든 것을 수행하는 하나의 proc은 이러한 것들을 제대로 검사 할 수 없으며 확실히 테스트 할 수 없습니다. 더 나아가 그것은 SQL 인젝션 공격뿐만 아니라 내부 보안을위한 선택의 여지가없는 테이블 수준에서 권한을 가져야 함을 의미합니다.

관련 문제