|
|
iBatis.Net에서 쿼리를 로그로 출력하면 죽~ 한줄로만 나온다.
이때 가독성을 높이기 위해서 iBatis.Net의 코드에서 아래를 변경한다.
DataMapper 프로젝트의 DomSqlMapBuilder 클래스에서 ParseDynamicTags() 메소드…
|
|
//string data = child.InnerText.Replace('\n', ' ').Replace('\r', ' ').Replace('\t', ' '); // 주석처리!! string data = child.InnerText.Replace('\t', ' '); |
|
|
2008-10-24 11:39:24,281 - Statement Id: [select_categories] Prepared SQL: [select CategoryID, CategoryName, Description from Categories] |
|
|
string pattern = string.Empty; Regex r; Match m; r = new Regex(pattern, RegexOptions.IgnoreCase | RegexOptions.Compiled); for (m = r.Match(strHtml); m.Success; m = m.NextMatch()) { if (string.IsNullOrEmpty(m.Groups[0].Value)) continue; urlList.Add(m.Groups[0].Value); } |
|
|
@"((http|https|ftp|mms)://[0-9a-z-]+(\.[_0-9a-z-]+)+(:[0-9]{2,4})?/?)"; // domain+port @"([.~_0-9a-z-]+/?)*"; // sub roots or sub directory @"(\S+\.[_0-9a-z]+??)?"; // file & extension string @"([_0-9a-z&=-]+)*"; // parameter @"^\d{5}$"; // 미국 우편 번호와 같은 5자리 숫자입니다. @"^(\d{5})|(\d{5}-\d{4})$"; // 5자리 숫자 또는 5자리 숫자-대시-4자리 숫자입니다. 미국 우편 번호 또는 미국 우편 번호+4 형식과 일치합니다. @"^(\d{5}(-\d{4})?)$"; // 앞의 예와 같지만 더 효율적입니다. ?를 사용하면 교체를 통해 별도의 패턴 두 개를 개별적으로 비교해야 하는 대신에 패턴의 4자리 부분을 선택적으로 입력할 수 있습니다. @"^[+-]?\d+(\.\d+)?$"; // 실수와 일치하며 선택적으로 기호를 사용할 수 있습니다. @"^[+-]?\d*\.?\d*$"; // 위의 예와 같지만 빈 문자열에도 일치합니다. @"^(20|21|22|23|[01]\d)[0-5]\d$"; // 24시간 값과 일치합니다. @"/\*.*\*/" // C 스타일 주석 /* … */의 내용과 일치합니다. @"(?:(ftp|https?|mailto|telnet):\/\/)?" //프로토콜부분 - 있을수도 없을수도 @"[a-zA-Z]\w+\.[a-zA-Z]\w+(\.\w+)?(\.\w+)?" //domain의 기본 골격은 daum.net @"([:?=&/%.-]+\w+)*"; //도메인 뒤에 추가로 붙는 서브url 및 파라미터들 이부분이 아직은 미흡하여 오류가 가끔 일어난다. |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56
|
private OleDbDataReader rd; private OleDbConnection Conn; private string strRet; private OleDbCommand cmd; private StringBuilder sbSQL; private OleDbParameter paramnSeq; try { // SQLOLEDB MSDAORA Conn = new OleDbConnection("Provider=MSDAORA;Data Source=(DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.0.xxx )(PORT = 1521)))(CONNECT_DATA = (SERVER = DEDICATED)(SERVICE_NAME = GROUP))); User Id =; Password =;"); Conn.Open(); try { sbSQL = new StringBuilder(); sbSQL.Append(" SELECT * "); sbSQL.Append(" FROM HEIS_CUSTOMER "); sbSQL.Append(" WHERE 1=1 "); sbSQL.Append(" AND CUSTOMER_CODE = ? "); paramnSeq = new OleDbParameter("CUSTOMER_CODE", OleDbType.Char, 4); paramnSeq.Value = "0003"; cmd = new OleDbCommand(sbSQL.ToString(), Conn); cmd.Parameters.Add(paramnSeq); rd = cmd.ExecuteReader(); if (rd.Read()) { strRet = rd["CUSTOMER_CODE"].ToString(); } else { strRet = ""; } } catch (System.Exception e1) { throw e1; } finally { rd.Close(); } } catch (System.Exception e2) { throw e2; } finally { Conn.Close(); } |
관련 글: JET OLEDB Connect Sample using DataAdapter, ORACLE Connect Sample using DataAdapter without TNS
|
링크
|