c# 시간비교하기 datetime과 timespan 이용... 여러가지 비교

이거가지고 삽질 많이 했는데....
딱 이거다 하는 자료가 거의 안 보였었다.

우리나라 C#하는 사람들이 별로 없어서 그런걸까..
C#을 하는 사람이 없다기보다는.. C#으로 윈도우 프로그램을 만드는 사람이 별로 없는 것 같다.
델파이보다 오히려 더 적을지도...
아마추어들이 하려면 C++에 api mfc 핥아먹고 바로 C#으로 넘어오는 편이 더 나을 것 같은데...

--------

private void button1_Click(object sender, EventArgs e)
{
  TimeSpan asef = new TimeSpan(15,30,00);
  Console.WriteLine(asef);
  Console.WriteLine(DateTime.Now.Add(asef));//현재시간에 15시간을 더하기
  Console.WriteLine(DateTime.Now.TimeOfDay);//0시부터 현재시간까지를 TimeSpan값으로 반환
  Console.WriteLine(TimeSpan.Parse("15:30:00"));//TimeSpan값을 지정.. 문자열
}
DateTime과 TimeSpan 둘 다 시간을 표현한다.
다른점은...
DateTime은 몇월몇일몇시몇분을 달력이나 시계를 표현하고
TimeSpan은 1시간, 2시간,,,... 이런걸 표현한다고 할까..
시간과 시각?
전자시계 개념으로 설면하자면... 10분짜리 타이머를 맞춘다면... 
TimeSpan.. 알람을 맞추면..DateTime이렇게 보면 쉬울까...
DateTime - DateTime은 TimeSpan자료형이 된다.
(DateTime)2011년 2월 16일 21시 - (DateTime)2011년 2월 16일 15시 = (TimeSpan)6시간
위의 소스코드만으로도 설명은 충분할 것 같지만.... 추가하자면...
8시부터 뭔가를 실행시키고 싶다! 라고 한다면....
타이머 돌리고... System.Windows.Forms.Timer fajklefjl = new [tab] ();
if(DateTime.Now.TimeOfDay >TimeSpan.Parse("08:00:00"))
{}
 

우분투ubuntu 하드hdd 추가하기(쉬운방법)mount

제목에 부자연스럽게 껴있는 영어는 검색어 키워드용

폴더 만들고 마운트하고 fstab에 추가하는것도 어렵지는 않은데..

이상하게 희한하게 에러가 날 때가 좀 있어서..
설정에서 문자열을 뭘 틀렸는지도 모르겠고...
그래서 더 쉬운 방법..
프로그램 추가
Storage Device Manager(pySDM)
설치
시스템->관리->스토리지 디바이스 매니저
이제 보고 설정하면된다.
써보니 완벽하지는 않다. 좀 버그가 있는데...어떻게든 돌아가기는 한다.
그냥 별로 안어려우니까 fstab 해서 하는게 나을지도...;;

우분투Ubuntu 10.10에서 APM Synaptic만으로 가장쉬운 설치

편한길을 돌아가지말고 쉬운일은 쉽게 하라....

11버전이 나올때가 다되서 좀 늦은감은 있지만....
요며칠 재설치를 몇번인가 하다가 생각나서 기록해둔다.
별말없이 화살표 찍찍 해놓은건 GUI기준이다.
우분투 10버전 에서는 세 가지 설치 보조 툴이 들어있다.
1. 프로그램 -> 추가제거
응용 프로그램 추가 제거를 담당한다.
2. 시스템 -> 관리 -> 업데이트 관리자
모든 프로그램과 라이브러리 커널 등의 업데이트를 담당한다.
3. 시스템 -> 관리 -> 시냅틱 패키지 관리자
Synaptic Package 관리자;;
앞에 프로그램 추가 제거에 있는것들도 이걸로 설치 가능하다.
 프로그램라이브러리나 개발툴 등 자잘한것들이 많이 등록 돼 있다.
리눅스에서 쓸 수 있는 유명한 프로그램은 거의 다 여기 있다고 봐도 된다.
시냅팁 패키지 관리자에 등록된 소프트웨어 버전이 항상 최신은 아니라는게 좀 문제긴하지만...
꼭 최신버전을 써야하는게 아니라면 시간낭비 할 필요없이 그냥 쓰면 된다.
어차피 개인 서버같은거 소스코드로 설치하면 설치해놓고 업데이트도 안하고 몇달씩 쓰게되곤 하니까...
장기적으로 시냅틱으로 까는게 더 최신버전으로 쓰게되는것일수도 있다.
11버전에서 시냅틱이 없어진다고 하는 말도 있긴 한데... 모르겠다.
APM 설치 1단계
시냅틱 패키지를 실행시켜서 필수 라이브러리 설치

zlib
libpng
freetype
jpeg
gd라이브러리
libxml2
libiconv
mysql
apache2
php
ZendOptimizer

그냥 비슷해보이는걸 깔면된다.
아니 이렇게 할 필요도 없나...
apache, php, mysql 세가지 검색해서 깔면... 필요한거 알아서 다 깔린다.
설치후에.... 폴더 찾아가서 셋팅파일만 고치면 끝.
셋팅파일 고치는건.... php나 mysql은 별도로 고쳐야할게 없을 것 같고...
apache는 ubuntu apache셋팅이라고 치면 많이 나온다.
ftp는 proftpd하고 gadmin을 같이 설치하면 된다.
gadmin이라고 gui환경에서 ftp서버 설정하는 툴이 있는데.... 써보면 좀 편하다.
아무리 시냅틱이라도 역시 처음까는 사람한테 이정도 설명으로는 힘들래나...

데이터베이스 MSSQL,SYBASE, MYSQL, Postgresql, cubrid 용량제한 대충 비교..

mssqlhttp://msdn.microsoft.com/en-us/library/ms143432.aspx











File size (data)


16 terabytes


16 terabytes


File size (log)


2 terabytes


2 terabytes

....어쨌든 크다.
내가 용량한계 걱정할필요없을만큼







Rows per table


Limited by available storage


Limited by available storage


oracle ............
모르겠다. mysql보다는 좋겠지뭐... 비싸고 라이센스 구할길이 없어서 제외... 어차피 어둠의 경로가 되긴하지만 그래도
mysql-------------------------------------------------------------------
http://forums.mysql.com/read.php?21,25724,224521#msg-224521
약간의 제한... innoDB로 하면 된다는건데..... 따로 깔아야되나 모르겠다
* 16TB of data for InnoDB table (maybe more). 
* _Default_ limit of 4G bytes or rows in MyISAM table -- See CREATE TABLE and ALTER TABLE for increasing that limit. 
* MyISAM hard limit is perhaps 2**56 bytes -- you won't hit that in my lifetime. 
* key_buffer_size (cache for MyISAM indexes) -- hard limit of 4GB (even on 64-bit machines), but you can have more than one. 
* innodb_buffer_pool_size -- more than 4GB, suspect at least 8TB. 
* 32-bit OS limits -- depends on OS -- ram-related things are limited to somewhere between 1.6GB and 3GB. 
* Number of rows -- might be 4G limit if compiled for 32-bit. 
* Various stats -- silently wrap at 4G if compiled for 32-bit. 
* File sizes -- mostly OS limit, which (today) tends to be plenty huge. 
* Query Cache -- don't know; probably not efficient to come anywhere near 4GB. 
* Number of databases/tables/files -- no hard limit, but millions will cause trouble. 
* Number of connections open at once (cf Max_connections) -- OS will stop you from opening more than RAM can handle (hundreds, maybe thousands). 
* One column of table -- 4GB (LONGTEXT, LONGBLOB) 
* InnoDB row size -- 8K? (*TEXT and *BLOB count for only 768 bytes until InnoDB "plugin") 
* Index size -- 1000? 
* VARCHAR/VARBINARY -- used to be 255, now 65535 bytes(?) 
* Number of views, stored procedures, etc -- ? 
* Length of db/table/view/sp/column names 
* Columns per table: 4K; possibly fewer if their names are lengthy. 
* Columns per table (InnoDB): 1000. 
* Index prefix: MyISAM: 1000, InnoDB: 767 
* GRANTs: Unlimited except by MyISAM table limits? 
* JOINs, including implicit ones in Views: 61 
* Integer (BIGINT): 0-2**64 (UNSIGNED) or +/- 2**63 (SIGNED) 
postgresql -------------http://www.postgresql.org/about/


























Limit Value
Maximum Database Size Unlimited
Maximum Table Size 32 TB
Maximum Row Size 1.6 TB
Maximum Field Size 1 GB
Maximum Rows per Table Unlimited
Maximum Columns per Table 250 - 1600 depending on column types
Maximum Indexes per Table Unlimited
Sybase...우리나라에서는 많이 안쓰는것같다.------------------------------------------------------
유룐가보다.제외...

더 조사할것도 없이....

cubrid----------------
일단 사용자층이 얇고 아직 버그도 꽤 많은 것 같다
리눅스보다는 윈도우에서 더 안정적으로 돌아가는 것 같고
아직 64비트환경에서 설치도 잘 안되고 안되는게 많다
(안된다는건..우분투10.10 64에 한정...)
centos나 우분투 9.04에서는 패키지도 지원된다.

결국 우분투에서 시냅틱설치가 되면서 성능도 좋은 postgresql이나 mysql로....
둘중에서 라이브러리같은거 지원 더 잘 되는것으로 선택하면 될 것 같다.