반응형

sql 5

준비된 문은 어떻게 SQL 주입 공격으로부터 보호할 수 있습니까?

준비된 문은 어떻게 SQL 주입 공격으로부터 보호할 수 있습니까? 준비된 문이 SQL 주입 공격을 방지하는 데 어떻게 도움이 됩니까? 위키피디아는 다음과 같이 말합니다. 준비된 문은 나중에 다른 프로토콜을 사용하여 전송되는 매개 변수 값을 올바르게 제거할 필요가 없기 때문에 SQL 주입에 대해 탄력적입니다.원래 문 템플릿이 외부 입력에서 파생되지 않으면 SQL 주입을 수행할 수 없습니다. 나는 그 이유를 잘 알 수가 없습니다.간단한 설명은 쉬운 영어와 몇가지 예로 무엇이 있을까요?이 아이디어는 매우 간단합니다. 쿼리와 데이터는 별도로 데이터베이스 서버로 전송됩니다. 그게 전부입니다. SQL 주입 문제의 근원은 코드와 데이터의 혼합에 있습니다. 사실 우리의 SQL 쿼리는 합법적인 프로그램입니다.그리고 우리..

codememo 2023.09.20

저장 프로시저와 보기의 차이점은 무엇입니까?

저장 프로시저와 보기의 차이점은 무엇입니까? 저는 몇 가지 점에 대해 혼란스럽습니다. 저장 프로시저와 보기의 차이점은 무엇입니까? SQL Server에서 저장 프로시저를 언제 사용하고 보기를 언제 사용해야 합니까? 보기를 통해 매개 변수를 전달할 수 있는 동적 쿼리를 만들 수 있습니까? 어떤 것이 가장 빠르고 어떤 기준으로 다른 것보다 빠릅니까? 보기 또는 저장 프로시저는 메모리를 영구적으로 할당합니까? 프로시저가 재료 테이블을 만드는 동안 뷰가 가상 테이블을 만든다고 하면 무엇을 의미합니까? 더 많은 포인트가 있다면 알려주시기 바랍니다.보기는 가상 테이블을 나타냅니다.보기에 여러 테이블을 결합하고 보기를 사용하여 데이터를 단일 테이블에서 가져온 것처럼 표시할 수 있습니다. 저장 프로시저는 매개 변수를 ..

codememo 2023.07.27

빈 값 또는 null 값을 확인하는 가장 좋은 방법

빈 값 또는 null 값을 확인하는 가장 좋은 방법 Postgres SQL 문에서 값이 null인지 빈 문자열인지 확인하는 가장 좋은 방법은 무엇입니까? 값은 긴 표현식일 수 있으므로 한 번만 체크 표시하는 것이 좋습니다. 현재 사용 중: coalesce( trim(stringexpression),'')='' 그런데 좀 못생겼어요. stringexpression아마도요.char(n) 하는열또식는함음이 된 열 식char(n)후행 공백이 있는 열. 가장 좋은 방법은 무엇입니까?그표은라는 stringexpression = ''산출량: TRUE…을 위해서''(또는 데이터 형식의 공백으로만 구성된 문자열의 경우)char(n)) NULL…을 위해서NULL FALSE 외의 것은 다음을 확인하려면:stringexpre..

codememo 2023.05.13

매우 큰 테이블에서 정확한 행 수를 계산하는 가장 빠른 방법은 무엇입니까?

매우 큰 테이블에서 정확한 행 수를 계산하는 가장 빠른 방법은 무엇입니까? 나는 다음과 같은 기사를 접했습니다.SELECT COUNT(*) FROM TABLE_NAME테이블에 행이 많고 열이 많은 경우 속도가 느려집니다. 저는 수십억 개의 행을 포함할 수 있는 테이블을 가지고 있습니다[약 15개의 열이 있습니다].테이블의 행 수를 정확하게 계산할 수 있는 더 좋은 방법이 있습니까? 답변하기 전에 다음 사항을 고려하십시오. 데이터베이스 공급업체 독립 솔루션을 찾고 있습니다.MySQL, Oracle, MS SQL Server를 포함하면 됩니다.하지만 데이터베이스 공급업체에 독립적인 솔루션이 없다면 데이터베이스 공급업체마다 다른 솔루션을 선택할 것입니다. 다른 외부 도구를 사용하여 이 작업을 수행할 수 없습니..

codememo 2023.05.03

카운트(*) vs. 카운트(1) vs. 카운트(pk): 어느 쪽이 좋은가?

카운트(*) vs. 카운트(1) vs. 카운트(pk): 어느 쪽이 좋은가? 이 질문에는 이미 답변이 있습니다. 개수(*) 대 개수(1) - SQL Server (13개의 답변) 닫힘8년 전. 다음과 같은 세 가지 종류가 있습니다. SELECT COUNT(*) FROM Foo; SELECT COUNT(1) FROM Foo; SELECT COUNT(PrimaryKey) FROM Foo; 내가 볼 때, 그들은 모두 같은 일을 하고 있고, 나는 코드베이스에 세 가지를 사용하고 있다.하지만, 나는 같은 일을 다른 방식으로 하는 것을 좋아하지 않는다.어느 쪽에 붙으면 좋을까요?그들 중 한 명이 다른 두 명보다 나은가요?결산 중 하나를 합니다.COUNT(field) ★★★★★★★★★★★★★★★★★」COUNT(*)에서..

codememo 2023.04.13
반응형