블로그 이미지
프로그램을 가장 훌륭하게 작성하는 방법은 상태가 변경되는 오브젝트들과 수학적인 값을 나타내는 오브젝트들의 조합으로 표현하는 것이다. -Kent Beck 초초초보

카테고리

Programming (184)
ASP.NET (9)
Silverlight (2)
Javascript (20)
C# (8)
java (25)
SQL (14)
Oracle (3)
MyBatis (3)
기타 (52)
개발방법론 (1)
trouble shooting (2)
Linux (5)
스칼라 (5)
html (2)
grails & gradle (3)
Spring (2)
rabbitmq (1)
(3)
spark (0)
docker (3)
Total
Today
Yesterday

달력

« » 2024.5
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

공지사항

최근에 올라온 글


-- 소스 첨부 --
Posted by 초초초보
, |

ms-help://MS.SQLCC.v9/MS.SQLSVR.v9.ko/tsqlref9/html/2ce018e9-1a3b-4530-a87d-842456a555ad.htm
Posted by 초초초보
, |


aspx 페이지를 만들면
html 의 head 태그에 runat ="server" 라는 게 붙어있다.

head에 runat="server" 라는 게 붙으면

cs 단에서 HtmlHead  클래스를 이용하여 head 를 설정할 수가 있다.

####### MSDN 소스 ######
     
      Style bodyStyle = new Style();

      bodyStyle.ForeColor = System.Drawing.Color.Blue;
      bodyStyle.BackColor = System.Drawing.Color.LightGray;

      // Add the style rule named bodyStyle to the header
      // of the current page. The rule is for the body HTML element.
      Page.Header.StyleSheet.CreateStyleRule(bodyStyle, null, "body");

      // Add the page title to the header element.
      Page.Header.Title = "HtmlHead Example";

 

Posted by 초초초보
, |
Posted by 초초초보
, |

C#에서의 암호화
System.Web.Security 네임 스페이스 에서

//"aaa" 글자를 "sha1" 알고리즘을 이용하여 암호화 한다.("md5" 알고리즘을 사용해도 됨.)
            string pass = FormsAuthentication.HashPasswordForStoringInConfigFile("aaa", "sha1");
            string pass1 = FormsAuthentication.HashPasswordForStoringInConfigFile("aaa", "sha1");
            Console.WriteLine(pass.Equals(pass1)); // True


MS - SQL 에서의 암호화

1. 간단한 테이블을 만든다. (binary 타입의..)
create table  a
(
 id varchar(100),
 pass varbinary(100)
)

2. PwdEncrypt() 를 이용하여 값을 입력한다.
insert into a values('id1', PwdEncrypt('aaa'))

그러면 입력된 값은
0x01009DA90A8CBBB84FECFF392EDCD8F358A9EB2F0B818D7A9C27
이러한 복잡한 값이 된다.

3. PwdCompare() 를 이용하여 값을 비교한다.
select PwdCompare('aaa',pass) from a where id='id1'

리턴 값은 0 혹은 1

끝.



Posted by 초초초보
, |

A() -> B() ->C() 함수를 호출 했다고 가정 했을 때

C() 함수에서 A() 함수명을 구할 수 있다.

        private void Defender4()
        {
            int count = new StackTrace().FrameCount; //현재의 호출스택 카운트
            StackTrace stacktrace = new StackTrace();
            MethodBase method = null;
            for (int i = 0; i <count ; i++)
            {
               method= stacktrace.GetFrame(i).GetMethod(); //i 번째에 해당하는 호출스택 메소드 반환
               Console.WriteLine("{0}번 째 호출스택 : {1}",i,method.Name);
            }
          
            Console.WriteLine();
        }


로그 작성에서 사용 하면 좋을 듯 함..








Posted by 초초초보
, |

참조 사이트 : http://msdn.microsoft.com/ko-kr/library/system.environment(VS.80).aspx


보통 환경 변수를 가져올 때
 string str = Environment.GetEnvironmentVariable("환경변수명");
 Console.WriteLine(str);

이런 식으로 가져오게 된다.

문장 속에 환경 변수가 들어 있다면 해당 값으로 치환해 주는 메소드가 있다.
String query = "%SystemDrive%";
str = Environment.ExpandEnvironmentVariables(query); //환경변수 여러개도 됨.

출력 값 : C:

파일의 경로를 저장 할 때 객체.Save("c:/파일명.확장자");
      --> 환경 변수를 구해서 객체.Save(str +  "/파일명.확장자");

Posted by 초초초보
, |


참조 : http://www.mvpmagazine.net/post/RowAs1Column.aspx

테이블
create table aa (idx int)
create table (bb idx int, namex varchar(10))

데이터

insert into aa values(1)
insert into aa values(2)

insert into bb values(1,'a')
insert into bb values(1,'b')
insert into bb values(1,'c')
insert into bb values(1,'d')
insert into bb values(1,'e')

insert into bb values(2,'a')
insert into bb values(2,'b')
insert into bb values(2,'c')
insert into bb values(2,'d')
insert into bb values(2,'e')

1차
declare @str varchar(1000)
--set @str =''
select @str = coalesce(@str + ',' +cast(bb.namex as varchar(10)),cast(bb.namex as varchar(10)))
from aa join bb on aa.idx = bb.idx
where aa.idx =1
select @str

결과값
a,b,c,d,e

2차
select idx, stuff(
(select ',' + cast(b.namex as varchar)
from aa a join bb b on a.idx = b.idx
where b.idx = aa.idx
group by b.namex, b.idx
order by b.namex
for xml path(''))
,1,1,'') as namex
from aa
where aa.idx in(1,2)
group by idx

결과값
idx    namex
1      a,b,c,d,e
2      a,b,c,d,e


--------------------------------------------------------------------------------------------------

SQL 2000 버전
이 예제는 테이블 하나로 테스트 한다.
사용자 함수를 이용한 쿼리

--테이블만든다
create table test
(
 id int,
 namex varchar(10)
)
go
-- 데이터 넣는다
insert into test values(1,'사과')
insert into test values(1,'배')
insert into test values(1,'딸기')
insert into test values(2,'참외')
insert into test values(3,'수박')
insert into test values(3,'수박')
insert into test values(6,'수박')
go

-- 같은 id 별로 namex 를 '값,값,' 으로 표현 해주는 사용자 함수
CREATE FUNCTION dbo.ConcatResult(@State CHAR(2))
RETURNS VARCHAR(8000)
AS
BEGIN
 DECLARE @Output VARCHAR(8000)


 SELECT @Output = COALESCE(@Output + ',','') + NAMEX
 FROM TEST
 WHERE ID = @State
 ORDER BY ID

 RETURN @Output
END
GO

-- 실제 적용 쿼리
SELECT DISTINCT ID, dbo.ConcatResult(ID) as NAMEX
FROM TEST
ORDER BY ID

--------------------------------------------------------------------------------------------------











Posted by 초초초보
, |

var xmldom = new ActiveXObject("Microsoft.XMLDOM"); //xmldom 객체 생성
xmldom.async = false; //동기로 설정
xmldom.load("/xmlResult.xml"); //해당 경로에서 xml 문서를 읽어들임
var xmldoms = xmldom.documentElement; //xml의 root element 를 가져옴.
alert(xmldoms.xml); //xml 문서가 어떻게 생겼는지 경고창으로 본다.


//문서 저장 하는 건 권한 오류가 남.. 이건 아시는 분 알려주세여 ㅠㅠ
xmldom.save("c:/savesave.xml"); //경고창 (권한이 없습니다.)



끝.
Posted by 초초초보
, |


//배열 선언
  var arr = new Array();
//각종 값들을 넣고
            arr[0] = "0";
            arr[1] = "1";
            arr[2] = "2";
            arr[3] = "3";


//  /(슬러쉬)기호로 조인을 하면
            var a = arr.join("/");
            document.write(a);
// 0/1/2/3   <-- 이런 출력값이 나온다.

//조인 기호를 넣지 않는다면..
            var a = arr.join();
            document.write(a);
// 0,1,2,3 <-- 기본값은 , (콤마)로 나뉘어 진다.

Posted by 초초초보
, |