목록Programming/C# (37)
C#,Delphi,Oracle,MSSQL 개발자블로그
- m_cmd는 OracleCommand 변수라 가정하면, OracleParameter 오라클파라미터변수1 = new OracleParameter(프로시저변수1, OracleDbType.프로시져변수타입1); OracleParameter 오라클파라미터변수2 = new OracleParameter(프로시저변수2, OracleDbType.프로시져변수타입2); ... m_cmd.CommandType = CommandType.StoredProcedure; m_cmd.CommandText = "프로시저명"; 오라클파라미터변수1.Value = 넣을 값1; 오라클파라미터변수2.Value = 넣을 값2; ... m_cmd.Parameters.Add(오라클파라미터변수1); m_cmd.Parameters.Add(오라클파라미..
- 폴더체크 System.IO.DirectoryInfo di = new System.IO.DirectoryInfo("폴더경로"); if(di.Exists) { // 폴더 존재 } else { //폴더 없음 - 파일 체크 string _Filestr = "파일 경로"; System.IO.FileInfo fi = new System.IO.FileInfo(_Filestr); if(fi.Exists) { // 파일 존재 } else { // 파일 없음 } 출처 : http://lhh3520.tistory.com/66
C#과 오라클을 연동하는 방법에는 여러가지가 있지만, 본 글에서는 ODAC를 이용하는 방법을 소개한다. ODAC는 오라클 홈페이지에서 별도로 다운을 받아야 한다. 다운받게되면, 비주얼 스튜디오에서 Oracle.DataAccess.dll 을 참조할 수 있다. 참조를 걸었으면, dll을 사용하기 위해서, Oracle.DataAccess.Client를 using 걸어준다. [select 할 DB] 위의 테이블에서, DNAME 컬럼에 있는 ACCOUNTING을 SELECT 하는 것을 테스트 한다. [소스] using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing..
우선 C 알고리즘으로 개발하려면 int nCurYear = 현재 년도; int nCurMonth = 현재 달; int nMaxDay = 0; 를 TIme struct 를 이용해서 구한다음에.. if( nCurMonth == 1 || nCurMonth ==3 || nCurMonth == 5 ... ) { nMaxDay = 31; } else if( nCurMonth == 4 || nCurMonth == 6 || nCurMonth == 9 ... ) { nMaxDay = 30; } else { if( ( nCurYear % 4 )) ... //윤년 계산 후 맞으면 29, 아니면 28 } 등의 계산을 거쳐야 하지만.. 단 한줄 DateTime.DaysInMonth( int Year, int Month ); r..
카카오톡에서 메세지가오면 우측 하단에 알림창이 뜨는 것 처럼, 폼을 하나 더 만들어서 띄운 후, Timer를 이용하여 일정 시간 후 없어지게 한다. public partial class Form1 : Form { Form2 frm = new Form2(); int timerCount = 0; public Form1() { InitializeComponent(); } private void button1_Click(object sender, EventArgs e) { timer1.Start(); System.Drawing.Rectangle ScreenRectangle = Screen.PrimaryScreen.WorkingArea; int xPos = ScreenRectangle.Width - frm.Bou..
Web과 인터페이스하여, web상에 어떤 문자열을 넣을 때, 깨지는 경우가 있을 수 있다. 영문이나 숫자는 잘 나오는데, 한글만 유독 깨진다면 HttpUtility 클래스를 이용하여, 문자열을 encoding하여, 정상적으로 출력하는 것이 방법이 될 수 있다. ex) System.Web; string strEncode = HttpUtility.UrlEncode("대한민국");
1.Substring 문자열의 위치를 이용하여 문자열을 컨트롤. - 기본구문 text.Substring(시작위치, 갯수); text.Substring(시작위치); ex) text = "abcdefg"; text.Substring(0,3) 은 abc 2.Split 지정된 문자를 기준으로 문자열을 분리. - 기본구문 text.Split(분리할문자); ex) text = "a-b-c-d-e"; string[] spText = text.Split('-'); 이면, spText[0] = a spText[1] = b spText[2] = c spText[3] = d spText[4] = e 3.IndexOf 특정 문자의 위치를 문자열에서 찾음. - 기본구문 text.IndexOf("찾을문자"); text = "ab..
텍스트를 쓸 때 "
call by value 와 call by reference의 차이점은 swap 함수의 구현으로써 설명 할 수 있다!! 'Call by value'닫기 1. Call by value : 우리말로하면 바로 "값에 의한 호출"이란 뜻으로, 어떤 함수를 호출할때에 전달인자로 그 데이터 값 자체를 전달하는 호출 방법이다. 2. swap함수의 구현 위와 같은 소스를 실행시켜보았을때, swap함수대로 a와 b의 값이 제대로 바뀌지 않은채로 출력하는걸 볼수 있다. 함수 호출시 ===> swap(a,b); (소스의 빨간 숫자들은 순서를 표현하기 위해 임의로 붙여놓은것, 소스코드와는 상관없다) 3. 스택(Stack)으로 나타내기 붙인 번호순서대로 메모리 상황을 스택으로 그려보면 다음과 같다 ① 변수 a와 b가 선언되고,..
재고추가폼에서 맛과 수량을 정해서 '추가'버튼을 누르면 DB에서의 재고량이 증가하고 폼을 닫았을때 원래의 폼에 있떤 리스트가 새로고침 되도록 하려고 한다!!!! 리스트가 있는 폼은 Form1 재고추가 폼은 Form2 즉 Form2의 소스에서 Form1에 있는 리스트를 제어하려고 하는 것이다!!!! 그러기 위해선 먼저 Form1에서 Form2를 열때 요러케 Form2 frm = new Form2(this); this를 넣어 넘겨준다 현재의 폼 , 즉 이Form1을 넘겨준다는것!! 그러고선 Form2의 소스에서의 생성자를 수정한다!! 빨간 네모 부분은 원래 있던 디폴트 생성자이다. (전달인자 없음) 이건 그대로 둔채 생성자 하나를 더 추가시킨다!!! ( 녹색 네모부분) Form1형식의 폼을 전달인자로 받는 ..