백업 이글루

codememo.egloos.com

포토로그



Jwidget J-grid

https://zangzangs.tistory.com/26?category=382432

1. data 배열 혹은 json 등 받을 변수를 선언한다 

2. jqGrid로 만든다

3. datatype, data :받을 데이터의 타입과 종류를 럿ㄴ언한다.

4. 높낮이 (heigt)와 너비(widrh)를 설정한다

5.colNames : cloumn의 이름 설정

6. colModel : column 별로 설정을 할 수 있다. "name은 data의 이름과 일치해야 한다."

7. loadtext, caption : loadtext : 그리드 테이블 로딩시 표시되는 텍스트 / caption 테이블의 이름 지정

8. pager, rowNum : 페이징 기능 사용시 설정하는 옵션. pager 속성은 html에 저장해둔 <div> 태그의 아이디를 입력한다.
 rowNum 은 한 페이지에 몇개의 row를 표시할지 설정할 수 있다. row의 개수가 넘어가면 또 다른 페이지를 생성한다. 

-

트랜잭션

http://springmvc.egloos.com/495798

mssql명령어

DESC 테이블명; 테의블 정의 보기



SELECT

SELECT * FROM 테이블명 WHERE 필드='조건' AND 필드2='조건2'

SELECT 필드1, 필드2, 필드3 FROM 테이블명

SELECT * FROM TAB; 존재하는 모든 테이블 보기

SELECT DISTINCT 필드1 FROM 테이블명; 중복제거하기

SELECT 필드1 FROM 테이블 WHERE 필드2 BETWEEN 00 AND 00; //00부터 00사이에서

SELECT 필드1 FROM 테이블 WHERE 필드2 IN (00, 00); //00과 00중에서

SELECT 필드1 FROM 테이블 WHERE 필드2 LIKE '%단어%';

SELECT 필드1 FROM 테이블 WHERE 필드2 IS NULL; or NoT IS NULL



UPDATE

UPDATE 테이블명 SET 필드='값', 필드2='값', 필드3='값' WHERE 필드 LIKE '조건'



INSERT

INSERT INTO 테이블명(필드1, 필드2) VALUES ('값', '값' );

비교연산자 : >, >=, <, <=, =, <>(not equal)



DROP TABLE 테이블명;



CREATE TABLE 테이블명 (

      필드명 타입 조건,

      id varchar2(15) primary key,

      pass varchar(15) not null,

      no number(5)

)



Null값 처리하기 : SELECT isNULL(필드, '0') FROM 테이블

방금 인서트한 자동증가값 ID 가져오기 : SELECT @@IDENTITY (현재 세션에서만 사용가능)

현재 테이블의 가장큰 큰큰값 가져오기 : SELECT IDENT_CURRENT('테이블명')

수행된 SQL문에 의해 영향받은 행의 수 : SELECT @@ROWCOUNT



테이블 정보보기 : EXEC sp_help 테이블

컬럼 정보보기 : EXEC sp_columns 테이블

주석 : -- or /* */

변수의 선언 : DECLARE @변수명 자료형, @변수명 자료형

변수 할당 : SET @변수명 = 값

변수값 가져오기 : SELECT @변수명

일부분만 가져오기 : SELECT TOP 5 컬럼 FROM 테이블



범위정하기 : SELECT 컬럼 FROM 테이블 WHERE 컬럼 BETWEEN 10 AND 20

                SELECT 컬럼 FROM 테이블 WHERE 컬럼 IN ('aaa', 'bbb', 'ccc')

패턴매칭 : SELECT 컬럼 FROM 테이블 WHERE 컬럼 LIKE '%제목%"

               _ : 어떤것이든 한 문자

               % : 없거나 아무 글자오거나

               [] : []안에 있는 글자들 - [b-f]

               [^] : ^다름에 있는 글자를 제외한 다른 것

중복제거 : SELECT DISTINCT 컬럼 FROM 테이블



GROUP BY : SELECT 컬럼1, sum(컬럼2) FROM 테이블 WHERE 조건 GROUP BY 컬럼1 HAVING sum(컬럼2) >= 30

(계산함수가 반드시 있어야 한다, GROUP BY ALL을 사용하면 WHERE제외된것 도 포함)

이너조인 : SELECT 컬럼 FROM 테이블 INNER JOIN 테이블 ON 컬럼=컬럼

아웃터조인 : SELECT 컬럼 FROM 테이블 LEFT OUTER JOIN 테이블 ON 컬럼=컬럼

                  (어느한쪽의 데이터를 모두 가져온다.)



컬럼 추가 : ALTER TABLE 테이블명 ADD 새컬럼 VARCHAR(10) NULL

컬럼 변경 : ALTER TABLE 테이블명 ALTER COLUMN 컬럼 VARCHAR(10) NULL

컬럼 삭제 : ALTER TABLE 테이블병 DROP COLUMN 컬럼



삭제 : DELETE FROM 테이블명 WHERE 조건

업데이트 : UPDATE 테이블 SET 컬럼 = 값 WHRER 조건

트랜잭션 : BEGIN TRAN

               ROLLBACK

               COMMIT

UNION : SELECT 컬럼1, 컬럼2 FROM 테이블

            UNION

            SELECT 컬럼1, 컬럼2 FROM 테이블

            (UNION은 컬럼의 자료형과 순서가 맞아야 한다. 중복데이터는 제거되며 UNION ALL을 하면 중복데이터도 가져온다.)

↑ 두 개의 쿼리 결과를 합쳐 주는 역할을 한다. 



IN : SELECT * FROM Customers

WHERE City IN ('Paris','London'); 와 같은 형태로 사용 가능 
EXISTS : SELECT 컬럼1 FROM 테이블  WHERE EXISTS ( SELECT * FROM 테이블 WHERE 조건 )

              (EXISTS는 하위쿼리가 어떤 결과라도 돌려지면 참)



커서생성 : DECLARE 커서이름 CURSOR FOR SELECT 컬럼명 FROM 테이블이름

커서열기 : OPEN 커서이름

커서닫기 : CLOSE 커서이름

커서해제 : DEALLOCATE 커서이름

커서로부터 행을 가져오거나 검색한다 :

       FETCH

                [[NEXT | PRIOR | FIRST | LAST | ABSOLUTE {n | @nvar} |
                        RELATIVE {n | @nvar}]
                FROM] cursor_name
                [INTO @variable_name1, @variable_name2,...]

        - SCROLL 옵션이 지정되지 않은 경우에는 NEXT만이 가능하다.   

@@FETCH_STATUS = 0 : 행을 에러없이 뽑았다면, @@FETCH_STATUS는 0을 반환







↓ MsSql 명령어 

begin tran : 트랜잭션을 시작함 (MS-SQL 의 명령어인데 다른 언어는 확인해보야아 한다. ) 

rollback tran : 수정이 잘못되었으면 다시 돌림

commit tran : 작업 완료 승인. 이후에는 돌이킬 수 없다. 



ㅁ 추가로 숙지해야 할 사항 및 공부해야 할 것 

- SELECT에 왠만하면 * 는 사용하지 않는다.

- WHERE절에서 연산자의 왼쪽은 가동하지 않는다. 컬럼을 가공하면 색인을 사용할 수 없다.

   ! WHERE 컬럼 * 3 < 10 말고 WHERE 컬럼 < 10 / 3 을 사용하자


★ 커서의 사용
▷커서는 꼭 필요한 경우에만 사용하는 것이 좋다.
▷커서를 사용하는 것이 좋은 경우
        - 많은 결과 집합 상에서 리스트 박스 등을 채울 때
        - 결과 집합을 예상할 수 없거나 클 가능성이 있는 응용 프로그램
        - 하나의 트랜젝션이나 연결에서 여러 개의 결과 집합을 필요로 하는 경우
 
▷커서를 사용하지 않아야 하는 경우
        - 전체 결과 집합을 검색하는 배치 작업을 수행하는 경우
        - 클라이언트 상에 캐시될 수 있는 정도의 작은 결과 집합을 검색하는 경우
        - 저장 프로시져에서 해당 집합을 순차적으로 처리하기 위해
DEALLOCATE , NOCOUNT, TRAN, GO, BEGIN, TRY, CATCH, IF 등등

출처: http://melonicedlatte.com/database/2017/02/16/174901.html



putty 명령어

* 파일/디렉토리 관련 명령어

ls : 디렉토리/파일 목록보기
ls -al : 숨겨진 디렉토리/파일 목록까지 정렬된 형태로 보기
cd (디렉토리이름) : 해당 디렉토리로 이동
cd : 최상위 디렉토리로 이동
pwd : 현재 디렉토리의 위치 보여주기
mkdir (디렉토리이름) : 해당 디렉토리 만들기
rm (파일이름) : 해당파일 지우기
rm -r (디렉토리이름) : 해당 디렉토리 지우기
rm -f (파일이름) : 강제로 해당파일 지우기
rm -rf (디렉토리이름) : 해당디렉토리와 디렉토리 아래에 있는 모든 파일 삭제
cp [파일1] [파일2] : 파일1을 파일2라는 이름으로 복사
cp -r [디렉토리1] [디렉토리2] : [디렉토리1] 안에 있는 것들을 [디렉토리2]로 복사/ [디렉토리2]가 존재하지 않는다면 [디렉토리2]를 만듬.
mv [파일1] [파일2] : [파일1]을 [파일2]로 이름을 바꾸거나 옮김. [파일2]가 디렉토리로 존재한다면 [파일1]을 [파일2] 디렉토리로 옮김.
touch [파일이름] : 해당파일을 생성하거나 업데이트
cat > [파일이름] : 입력을 해당이름으로 저장
cat < [파일이름] : 해당파일의 내용을 출력(모두 출력)
more [파일이름] : 해당파일의 내용을 출력(구분 출력)
head [파일이름] : 해당파일의 첫 10줄을 출력
tail [파일이름] : 해당파일의 마지막 10줄을 출력
tail -f [파일이름] : 해당파일에 추가되는 내용을 출력, 마지막 10줄부터 출력함.

* 프로세스 관련 명령어
ps : 현재 활성화된 프로세스 보여주기
top : 실행중인 모든 프로세스 보여주기
kill [프로세스 id] : 해당 프로세스를 종료(프로세스 idㄹ를 줄여서 pid라고 함/pid는 'ps'명령어를 입력하였을 때, 해당 프로세스의 맨 앞에 위치한 숫자를 의미한다.
bg : 정지되었거나 화면에서 안보이게 실행중인 프로세스 보여주기/정지된 프로세스를 화면에 출력하지 않고 계속 진행하기
fg : 화면에 보이지 않게 작동하던 작업 중 최근의 것을 화면에 출력하면서 작동시키기
fg n : 화면에 보이지 않게 작동하던 작업 중 n 번째 작업을 화면에 출력하면서 작동시키기

* 파일 권한(퍼미션)관련 명령어
chmod [권한숫자][파일이름] : 해당파일의 퍼미션값을 해당 권한숫자대로 바꾸고 숫자는 3자리이며 첫 번째는 소유자, 두번째는 그룹, 세번째는 익명의 권한을 더해서 나타낸다.

* 단축키
Ctrl+C : 현재 명령의 실행을 강제로 마침
Ctrl+Z : 현재 명령을 멈춤. fgf를 이용해서 계속해서 화면에서 보이도록 실행하거나 bg 를 이용해서 안보인채 계속 실행.
Ctrl+D : 현 세션에서 로그아웃, exit와 비슷
Ctrl+W : 현재 라인에서 한 단어 삭제
Ctrl+U : 현재 줄 전체 삭제
Ctrl+R : 최근 입력한 명령어 보여주기
!! : 마지막 명령어 반복실행
exit : 현재 세션에서 로그아웃


출처: https://smiler.tistory.com/entry/Putty-명령어 [아직은 내가 쓴 글보다 퍼온 글이 훨씬 많음]

레이어 팝업과 팝업창 차이

레이어 팝업

 

  • 현재 페이지에서 다른 페이지로 이동 시 어떤 정보를 입력해야 처리가 가능한 경우 사용
  • 고객이 반드시 인지하여 지금 즉시 처리해야 하는 경우 사용
  • 특정 컨텐츠 영역을 다른 컨텐츠로 대체하고 싶을 때 겹쳐서 띄울 수 있음
  • 별도의 페이지 넘김 없이 즉각 반응하므로 고객에게 신속히 정보를 전달할 수 있음

 

팝업 창

 

  • 일정 기간을 두고 고객에게 인지시켜 처리해야 하는 경우 (예를 들어 서비스 종료에 대한 안내)
  • 현재 페이지에서 제공되는 정보와 다른 새로운 컨텐츠를 제공하는 경우 팝업창을 통해 알림
  • 브라우저와 서비스팩 버전에 따라 팝업창이 차단되는 현상이 발생할 수 있음
  • 현재 페이지의 이동을 유지하여 고객이 원하고자 하는 업무를 처리하면서 새로운 정보를 갱신시키고자 할 경우 사용

        ex)관리자 메모 입력

 

[출처] 레이어 팝업과 팝업창 차이점|작성자 



팝업은 현재 열려있는 브라우저 페이지에 또다른 브라우저 페이지를 띄우는 것. (창 + 창 n) 브라우저에서 이 창의 여닫기를 조절할 수 있다. 

모달은 기존의 브라우저 페이지 위에 새로운 윈도우가 아니라 레이얼ㄹ 까는 것. 모달창은 제거하지 않아도 페이지를 이동하면 자연히 사라지며, 기존 페이지와 부모-자식 관계를 맺는다. 


팝업 + 모달 = iframe 모달 

iframe을 통해 모달창 생성을 하면 모달의 형태로 브라우저 위에 새 레이어가 깔린다. 부모와 자식 요소로 호출이 가능하다. 


참고자료 : https://bomango.tistory.com/57


1 2