본문 바로가기

MS-SQL/CLR-UserDefinedFunctions4

[SQLCLR] 외부 .NET Library 참조 시에 0x80131044 오류 해결 방안 처리되지 않은 예외: System.IO.FileLoadException: 파일이나 어셈블리 '~~~~~~~~~~~~~~~~' 여기에 종속되어 있는 파일이나 어셈블리 중 하나를 로드할 수 없습니다. 강력한 이름의 어셈블리가 필요합니다. (예외가 발생한 HRESULT: 0x80131044) Smb 공유를 이용한 파일 복사 테스트 진행 중 , SharpCifs 라이브러리 참조 후 , Assembly 생성 및 FUNCTION 생성 후 CLR 함수 호출 시에 위와 같은 에러가 발생 하였습니다. 아래 출처 블로그에서 많은 정보 얻어 해결 하였습니다. 출처 : ICODEBROKER :: [C#/COMMON] 강력한 형식의 어셈블리에서 서명되지 않은 어셈블리 참조 문제 해결하기 (tistory.com) SharpCif.. 2020. 11. 25.
[SQL CLR] SqlString 리턴형식 Null값 리턴 해주기 제 생각에는 가끔씩 리턴형식과 다르게 리턴해야하는 경우가 있는거 같습니다. 예를들면 T-SQL 로 UPDATE 명령실행시 CLR 함수를 호출하여 리턴값을 업데이트 할시에 불가피하게 리턴형식이 아닌 NULL의 형식의 리턴이 필요할수도 있을 것 같습니다. 찾다보니 SqlString 형식에도 Null을 리턴할수 있는 방안이 있는 것 같습니다. [Microsoft.SqlServer.Server.SqlFunction(DataAccess = DataAccessKind.Read)] public static SqlString UDF_DECRYPTION_TEXT(SqlString CipherText) { if (CipherText.IsNull || CipherText.ToString() == "") { return Sy.. 2014. 3. 3.
[SQL CLR] 특정 문자 구분(Split) 형식으로 문자열 나누기 using System; using System.Data; using System.Data.SqlClient; using System.Data.SqlTypes; using Microsoft.SqlServer.Server; public partial class UserDefinedFunctions { [Microsoft.SqlServer.Server.SqlFunction] public static SqlString UDF_SPLIT_STRING(SqlString strSplit , SqlString strGubunJa, SqlInt16 intindex) { if(string.IsNullOrEmpty(strSplit.ToString()) || string.IsNullOrEmpty(strGubunJa.ToSt.. 2013. 11. 5.
[SQL CLR] 숫자만 얻는 CLR 사용자 정의 Function using System; using System.Data; using System.Data.SqlClient; using System.Data.SqlTypes; using Microsoft.SqlServer.Server; public partial class UserDefinedFunctions { [Microsoft.SqlServer.Server.SqlFunction] public static SqlString UDF_GET_NUMBER(SqlString sqlString) { string returnValue = ""; try { foreach (char st in Convert.ToString(sqlString)) { if (Char.IsNumber(st)) { returnValue += st; }.. 2013. 11. 4.