-- 시스템상의 데이터베이스 목록 출력하기

exec sp_MsForEachDB 'print ?'


-- 모든 데이터베이스 체크하기

exec sp_MsForEachDB 'DBCC CHECKDB (?)'


-- 모든 데이터베이스 삭제하기

exec sp_MsForEachDB 'DROP DATABASE [?]'


"모든 데이터베이스를 삭제" 한다고 말했다. 

절대!!! 조심해서 사용할 것!!!



이 글의 주제.. "전체 테이블 삭제하기"는 아래와 같다.


-- 해당 데이터베이스의 모든 테이블 삭제하기

exec sp_MsForEachTable 'DROP TABLE ?'


다시한번 말하지만...

"모든 테이블을 삭제" 한다고 말했다. 

절대!!! 조심해서 사용할 것!!!







참고로 모든 객체 삭제용 스크립트를 만들때는 아래와 같은 방법을 이용하자!!!!


--Table

SELECT 'DROP TABLE ' + SCHEMA_NAME(schema_id)+'.'+name AS TableToDrop FROM sys.objects WHERE type='U'


--VIEW

SELECT 'DROP VIEW ' + SCHEMA_NAME(schema_id)+'.'+name AS ViewToDrop FROM sys.objects WHERE type='V'


--PROCEDURE

SELECT 'DROP PROCEDURE ' + SCHEMA_NAME(schema_id)+'.'+name AS procedureToDrop FROM sys.objects WHERE type='P'


--FUNCTION

SELECT 'DROP FUNCTION ' + SCHEMA_NAME(schema_id)+'.'+name AS functionToDrop FROM sys.objects WHERE type='FN'



여기서 나오는 결과값 쿼리를 복사해서 일괄 실행하면 끝!!!




네트워크 드라이브에 암호를 저장해 놓고 사용하다가 계정을 다른계정으로 바꾸어 쓸 경우 문제가 되는 경우가 종종 있습니다.

이미 다른 계정으로 연결이 되어 있다는둥.. 연결을 먼저 끊으라는둥.. 하는 메세지들이 뜨면서 연결이 안되곤 합니다.



뭐 이미 아시는 분들도 계시겠지만 이런 경우 해결 방법을 공유합니다.


시작 >> 실행 에서 control userpasswords2 라고 치고 엔터를 치면 사용자 계정 관리 대화상자가 열립니다.

고급 탭에서 암호 관리 버튼을 클릭하면 현재 암호가 저장되어 있는 서버의 아이피 주소가 나옵니다.

해당 아이피를 삭제하면 다른 계정으로 연결이 가능해집니다.

(출처 : http://coolthinking.tistory.com/1 )
Table에 데이터가 들어가 있는 경우 사이즈를 축소하는 것은 안된다.

여기까지는 다 아는 사실..



그런데.. 에를 들어서

Number(13,3)의 경우 소수점 3자리를 5자리로 늘이려면..

ORA-001440 정도 또는 자리수를 축소할 열은 비어 있어야 합니다. 라는 오류가 발생한다.


축소??


검새을 해보니..

13+3의 길이를 잡고 있다가 3을 5로 변경을 하면..

13+5가 되는 것이 아니라 11+5가 되기 때문에 축소로 본단다..



그래서 3을 5로 변경을 하려면..


Number(15,5)로 앞자리도 변경을 해주어야 정상적으로 변경이 된다.

여러개의 텍스트 파일을 하나로 합치는 팁..



copy 1.txt + 2.txt + 3.txt out.txt /b

혹은

copy *.txt out.txt /b

여기서 b는 이진으로 작업하라는 옵션이라는데..

합친 결과파일 out.txt에 쓰레기 공백이나 줄바꿈이 들어가지 않게 한다는...


자세한 내용은 copy /? 해서 확인할 것..

텍스트 에디터나 기타 윈두우 상에서 저장하기/열기 대화상자에 좌측에 바로가기가 있다.

이름하여 PlaceBar라고 부르는 것인데.

보탕 최근문서/바탕화면/내문서/내그림 등등이 있다.


이것을 조정해서 내가 원하는 폴더로 지정하는 방법이 없을까 찾아봤는데..

아래와 같은 방법을 찾았다.




1. 레지스트리 직접 수정
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\comdlg32\PlacesBar
"Place0"="e:\\XP Utils"
"Place1"="e:\\research"
"Place2"="e:\\Registry Patches"
"Place3"="e:\\UtilitiesSet 2"
"Place4"="e:\\UtilitiesSet


근데 저 경로를 레지스트리에 만들라는건지는 모르겠지만..
여하튼 내가 레지스트리를 뒤진결과...
위의 경로는 찾을 수 없었다.





2. XP 파워토이의 TweakUI를 이용한 방법
TweakUI를 설치한 후에(http://download.microsoft.com/download/f/c/a/fca6767b-9ed9-45a6-b352-839afb2a2679/TweakUiPowertoySetup.exe),Common Dialogs 항목에 보면 Places Bar에 대한 설정이 있습니다. 디폴트/숨김/커스텀을 지정할 수 있는데, 커스텀을 선택하고 폴더명을 적어주면 됩니다.


그러나..

영문버전이라서 그런지..
경로명이 조금 길면 다 안써지는 부작용이 있다.

그래서 이것도 패스..




3. XP Pro 버젼의 gpedit.msc를 이용하는 방법

실행창에서 gpedit.msc를 입력하고, 그 창에서

사용자구성 | 관리 템플릿 | Windows 구성 요소 | Windows 탐색기 | 공용 파일 열기 대화 상자 | 바로 가기 모음 표시 항목을 클릭하고 "사용"에 체크한 후 지정할 디렉토리 경로를 넣어주면 됩니다. (5개까지 가능)


난 이방법으로 해서 다섯개의 경로를 지정했다.




출처 : http://windowsxp.mvps.org/PlacesBar.htm


SELECT * FROM user_constraints
WHERE owner = 'DB User' AND constraint_name = '제약조건 명'


이상!!

오피스2007이 인터페이스가 많이 변해서 짜증이 좀 날때가 있다.

특히나 Excel에서 VBA를 자주 이용하는 나로써는 바뀐인터페이스에 적응이 안되는게 사실이다.


간략하게 Excel2007에서 VBA 관련 설정법을 적어 본다.



1. 보안설정

사용자 삽입 이미지
클릭...



팝업메뉴 우측 하단에 Excel 옵션 을 클릭

좌측 메뉴에 보안센터 클릭 >> 우측 하단에 보안센터 설정 버튼 클릭

좌측 메뉴에 매크로 설정 클릭

우측 상단에 모든 매크로 포함(위험성 있는 코드가 실행될 수 있으므로 권장하지 않음)(E) 을 선택한 후 확인 버튼 클릭

그 다음 창에서 확인 버튼을 한번 더 클릭하면 매크로를 이용할 수 있는 환경은 설정이 완료 됨.




2. 추가기능

사용자 삽입 이미지
클릭...


팝업메뉴 우측 하단에 Excel 옵션 을 클릭

좌측 메뉴에 추가기능 메뉴 선택

우측 하단에 이동 버튼을 클릭

다음 창에서  분석도구, 분석도구 VBA 항목을 체크한 뒤 확인 버튼 클릭



추가기능이 추가되면 통계함수를 비롯한 상위 함수를 이용할 수 있는 환경 설정 완료 됨.



3. VBA 사용 설정

사용자 삽입 이미지
클릭...


팝업메뉴 우측 하단에 Excel 옵션 을 클릭

좌측 메뉴 기본 설정 클릭 후 우측에서 리본 메뉴에 개발 도구 팁 표시(D)의 체크 박스에 체크하신 후 확인 버튼을 클릭

상단의 메뉴 표시줄에 ‘개발 도구’ 항목이 추가 완료 됨.




이상...










"uses or overrides a deprecated API."

저딴 오류가 발생한다면..

자바 버전이 올라가면서 특정 명령어가 안돌아 간다는 것을 의미한다.



나 같은 경우는..


String encodeStr = URLEncoder.encode("특수&문자");

이 부분이 문제가 되었다.

String encodeStr = URLEncoder.encode("특수&문자","UTF-8");


이렇게 변경해서 해결 완료...

잘되던 오라클이 갑자기 접속이 안됐다.


AD전환 하고 나서 오라클을 지우고 다시 설치하였는데..



어라..

"ORA-12154 TNS : 서비스 명을 해석할 수 없습니다." 라는 오류가 발생한다. ???


인터넷 검색 시작..


Oracle 설치 폴더에 Network에 Admin 폴더 안에 있는 sqlnet.ora 파일이 서버와 틀려서 발생하는 오류란다.



열어서 확인해 보니..

AD관련해서 NAMES.DEFAULT_DOMAIN = ***.NET이부분이 추가가 되었다.


앞에 #을 붙여서 주석처리..



그리고 다시 시도 했더니..


젠장.. 또 안된다.



"ORA-12638: 신용검색에 실패했습니다.".... 란다.


젠장..



아무리 내 신용도가 바닥이라..


회사에서 내말을 아무도 안믿기는 하지만.. 쩝..


이건 너무 하잖어..




다시 검색..


결과도 잘 안나온다.


TNS셋팅 다시 해봤다.

TNS명에 보니 이전에는 안붙던 도메인이 붙는다.


TNS명.***.NET 이라고..



다시 시도..


역시나 같은 결과..




쩝..




인터넷 다시 검색..

다행히 결과가 나왔다.



sqlnet.ora 파일에 SQLNET.AUTHENTICATION_SERVICES= (NTS) 이부분을 주석처리.. 하란다.


역시나 앞에 #을 붙이고 시도..



다행히 정상적으로 로그인이 된다.



하튼.. 지랄이다.. 지랄.. 쩝..

1.Windows 계열일 경우
이경우 레지스트리에 등록된 SID를 지우셔야 할겁니다.
제가 찾아본것으로는 아래 레지스트리를 지우시고
다시 DB를 생성하시면 될듯합니다.
\HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\HOMEID\SID
\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\OracleServiceSID
이두가지를 지우시면 될듯합니다.
여기서 SID는 예전에 설치하셨을때 사용하신 SID겠죠..
이게 남아있으면 같은 SID로 다시 DB를 만들수 없습니다.


2.Unix계열(리눅스도 포함)
보통 SID는 oratab이란 파일에 저장되는데
이파일은 시스템마다 조금씩 틀리지만
/etc, /var/opt/oracle 밑에 존재합니다.
그냥 이파일을 지우시던지...아니면
편집하셔서 기존에 설치하셨던 SID 리스트를
지우시면 됩니다.



출처 : http://kin.naver.com/detail/detail.php?d1id=1&dir_id=10110&eid=d1ATOYd7LSPSDdaPp6zGw8j1Ej4NbTI6&qb=v8C288WsIHNpZA

+ Recent posts