[C#] 매개 변수 선언에서 varchar (MAX)에 어떤 크기를 사용합니까?

ADO.NET에서 매개 변수를 만들 때 일반적으로 열 크기를 설정합니다.

그러나 열이 어떤 크기 VARCHAR(MAX)입니까?

cmd.Parameters.Add("@blah", SqlDbType.VarChar, ?????).Value = blah;



답변

이 경우 -1을 사용합니다.


답변

완전한 코드 라인 인 Michal Chaniewski가 -1을 보지 못한 사람들을 위해 :

cmd.Parameters.Add("@blah",SqlDbType.VarChar,-1).Value = "some large text";


답변

최대 SqlDbType.VarChar 크기는 2147483647입니다.

당신이 일반적인 사용한다면 OLEDB 연결 대신 SQL의를 내가 발견 여기 LONGVARCHAR 데이터 타입도 있습니다. 최대 크기는 2147483647입니다.

cmd.Parameters.Add("@blah", OleDbType.LongVarChar, -1).Value = "very big string";


답변

size 매개 변수를 전달할 필요는 없으며 Varchar이미 다음과 같이 MAX 임을 이해한다고 선언 하면됩니다.

cmd.Parameters.Add("@blah",SqlDbType.VarChar).Value = "some large text";


답변

이런 식으로하면 :

    cmd.Parameters.Add("@blah",SqlDbType.VarChar).Value = "some large text";

크기는 “일부 큰 텍스트”에서 가져옵니다.

이것은 출력 매개 변수 일 때 문제가 될 수 있습니다. 더 이상 문자를 반환하지 않고 입력으로 넣습니다.


답변