레이블이 SQL강좌인 게시물을 표시합니다. 모든 게시물 표시
레이블이 SQL강좌인 게시물을 표시합니다. 모든 게시물 표시

2020년 7월 19일 일요일

(기본SQL쿼리)현재 계정의 테이블 목록 확인, 테이블 구조/칼럼 확인, 현재 접속한 계정의 데이터베이스 이름, SID확인, 현재 접속한 데이터베이스 버전확인

(기본SQL쿼리)현재 계정의 테이블 목록 확인, 테이블 구조/칼럼 확인, 현재 접속한 계정의 데이터베이스 이름, SID확인, 현재 접속한 데이터베이스 버전확인

http://ojc.asia/bbs/board.php?bo_table=LecSQLnPlSql&wr_id=596

3. 기본 SQL 명령어

3.1 Schema 계정에서의 기본 쿼리문

현재 계정의 테이블 목록 확인

SQL> SELECT * FROM tab;

SQL> SELECT * FROM user_tables;

SQL> SELECT * FROM user_objects

2 WHERE object_type = ‘TABLE’

SQL> SELECT * FROM USER_CATALOG

2 WHERE table_type = ‘TABLE’

[현재 접속한 계정의 모든 테이블을 확인 하시오]

SQL> select * from tab;

TNAME TABTYPE CLUSTERID

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

BOARD TABLE

BOARDLOG TABLE

BONUS TABLE

……

……

SQL> select table_name from user_tables;

TABLE_NAME

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

DEPT

EMP

BONUS

SQL> select object_name from user_objects

where object_type = 'TABLE';

OBJECT_NAME

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

S_WAREHOUSE

S_TITLE

S_REGION

S_PRODUCT

S_ORD

……

SQL> select * from user_catalog

where table_type = ‘TABLE’;

TABLE_NAME TABLE_TYPE

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

BOARD TABLE

BOARDLOG TABLE

……

……

테이블 구조/칼럼 확인

SQL> column column_name format a10

SQL> column data_type format a10

SQL> SELECT COLUMN_NAME NAME, DATA_TYPE,

DATA_LENGTH, DATA_PRECISION,

DATA_SCALE, NULLABLE, AVG_COL_LEN

FROM COLS

WHERE TABLE_NAME ='MYEMP1';

NAME DATA_TYPE DATA_LENGTH DATA_PRECISION DATA_SCALE NULLABLE AVG_COL_LEN

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

EMPNO NUMBER 22 N 6

ENAME VARCHAR2 100 Y 14

DEPTNO VARCHAR2 1 Y 2

ADDR VARCHAR2 100 Y

SAL NUMBER 22 7 0 Y 6

JOB VARCHAR2 20 Y

COMM NUMBER 22 7 0 Y

SUNGBYUL VARCHAR2 1 Y

HIREDATE DATE 7 Y

OUTDATE VARCHAR2 8 Y

MGR NUMBER 22 Y

11 개의 행이 선택되었습니다.

SQL> DESC MYEMP1;

이름 널? 유형

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

EMPNO NOT NULL NUMBER

ENAME VARCHAR2(100)

DEPTNO VARCHAR2(1)

ADDR VARCHAR2(100)

SAL NUMBER(7)

JOB VARCHAR2(20)

COMM NUMBER(7)

SUNGBYUL VARCHAR2(1)

HIREDATE DATE

OUTDATE VARCHAR2(8)

MGR NUMBER

현재 접속한 계정의 데이터베이스 이름, SID확인

하나의 데이터베이스에 인스턴스가 하나라면 데이터베이스명과 SID는 같다. 하지만 RAC 환경처럼 하나의 데이터베이스에 인스턴스가 여러 개라면 데이터베이스명과 SID가 일치하지 않는다.

SQL> conn / as sysdba

연결되었습니다.

SQL> -- 데이터베이스명(DBNAME) 확인방법, 일반적으로 데이터베이스가 하나의 인스턴스로 구성되어 있다면 DBNAME과 SID는 같다. 우선 데이터베이스명을 확인하자.

SQL> select name, db_unique_name from v$database;

NAME DB_UNIQUE_NAME

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

ONJ onj

SQL> -- 이번에는 SID를 확인하자. (자바같은 프로그램에서JDBC로 접속 할때는 SID로 접속한다.)

SQL> select instance from v$thread;

INSTANCE

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

onj

아래 예문처럼 RAC로 묶여 있는 경우 SID가 다를 수 있다.

SQL> select name, db_unique_name from v$database;

NAME DB_UNIQUE_NAME

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

ONJ onj

SQL> -- 이번에는 SID를 확인하자. (자바같은 프로그램에서JDBC로 접속 할때는 SID로 접속한다.)

SQL> select instance from v$thread;

INSTANCE

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

onj1

onj2

현재 접속한 데이터베이스 버전확인

v$version에서 확인하면 된다.

SQL> SELECT * FROM v$version;

BANNER

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

Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - Production

PL/SQL Release 11.2.0.1.0 - Production

CORE 11.2.0.1.0 Production

TNS for 32-bit Windows: Version 11.2.0.1.0 - Production

NLSRTL Version 11.2.0.1.0 - Production

(C#교육동영상)C# ADO.NET 실습 ODP.NET/ODAC 설치 오라클 함수 호출 실습, C#학원, WPF학원, 닷넷학원, 자바학원

  (C#교육동영상)C# ADO.NET 실습  ODP.NET/ODAC 설치  오라클 함수 호출 실습, C#학원, WPF학원, 닷넷학원, 자바학원 https://www.youtube.com/watch?v=qIPU85yAlzc&list=PLxU-i...