programing

어떻게 t-sql의 "tinyint"를 c#에서 정수로 변환할 수 있습니까?

cafebook 2023. 7. 7. 21:07
반응형

어떻게 t-sql의 "tinyint"를 c#에서 정수로 변환할 수 있습니까?

나는 있습니다tinyint데이터베이스의 열을 다음으로 변환합니다.Int32당분간SqlDataReader.

어떻게 하면 좋을까요?

#1 편집

저는 최근에 이것을 해야만 했습니다.

int a = dataReader.GetByte(dr.GetOrdinal("ColumnName"));

#답변 외에도

SQL Server 데이터 유형 매핑

bigint           - GetInt64  
binary           - GetBytes  
int              - GetInt32  
money            - GetDecimal  
rowversion       - GetBytes  
smallint         - GetInt16  
tinyint          - GetByte  
uniqueidentifier - GetGuid   
...

자세한 내용은 SQL Server 데이터 유형 매핑을 참조하십시오.

일반적으로 바이트로 반환되는 것은 무엇입니까?그렇다면 상자를 꺼낸 다음 변환을 수행합니다.

(int)(byte) reader["column"];

또는 변환이 자연스럽게 이루어지도록 합니다.

int x = (byte) reader["column"];

또는 강력하게 입력된 방법에서도 동일한 작업을 수행합니다.

int x = reader.GetByte(column);

다음으로 조정sbyte또는short아니면 내가 그것에 대해 틀리면 무엇이든.byte변환은 SQL Server 쪽에서 수행할 수 있지만, 저는 개인적으로 클라이언트 쪽에서 수행하고 SQL을 더 단순하게 유지할 것입니다.

Tiny Int 문제를 처리하기 위해 "SByte" 작업을 매번 사용합니다.

int RetValue;
RetValue = (int)(byte)dt.Rows[A][B]  // A = RowNo , B = 'tinyint' Column Name.

sql 테이블에서 작은 int를 얻으려면 다음을 수행합니다.

retorno = Convert.ToInt32(dr.GetByte(dr.GetOrdinal("StepStatus")));

여기서 returno는 int 변수입니다.

이것이 당신에게 도움이 되길 바랍니다.

언급URL : https://stackoverflow.com/questions/1922094/how-can-you-convert-tinyint-of-t-sql-to-integer-in-c

반응형