SQL関連のブックマーク
SQLの基本操作を調べれる
Oracle関数を調べれる
Oracoleのエラーコードから原因と対策を調べられる
DB接続エラー時の対処方法、原因切り分けを説明
SQL覚え書き
接続関連
psql -U dbuser -h a2 Bugzilla
-U:ユーザ -h:ホスト名
\d
この後にテーブル名を書くと列名が見れる
SQL文関連
列名 LIKE 'パターン'
(_)アンダースコア・・・1文字に該当
(%)パーセント・・・0文字を含む任意文字列
SELECT DISTINCT(列名)
列名内で同じものが出て来ると一つしか表示しない
SELECT COUNT(列名)
WHERE後に書いた条件に合う行数が出力される
ORDER BY 列名 ASC(DESC)
- 他テーブルの同じ名前の列の値を同じ値のは1つずつ表示
select user_id from tb_st_coop_log
union
select user_id from tb_st_coop_control
order by user_id(ソートは全体にかかる)
UTL_I18N.TRANSLITERATE(TO_SINGLE_BYTE(列名),'FWKATAKANA_HWKATAKANA')
ダンプ関連
exp ユーザ名/パスワード file=出力ファイル名 owner=ユーザ名
imp ユーザ名/パスワード file=入力ファイル名 ignore=y full=y
ignore・オブジェクト存在時上書き
full・ダンプファイル全体
※注意 インポート前にインポートするテーブルが既に存在する場合は
内容は上書きされないので、上書きしたい場合は事前にtruncate tableしておく
テーブルを選択し、エクスポート(インデックス等も出力する場合はオプションで選択)
移動先に同テーブル名がある場合はドロップ(バックアップテーブル取得をお勧め)
管理→インポート(ユーザ名・テーブル名入力)
expdp スキーマ/パスワード directory=ディレクトリオブジェクト tables=スキーマ.テーブル file=出力ファイル query=\"where 条件文 \" CONTENT=data_only
impdp スキーマ/パスワード directory=ディレクトリオブジェクト dumpfile=ダンプファイル tables=スキーマ.テーブル logfile=EXPDP.LOG content=data_only
テーブル単位、データのみインポート
UNDO関連
select '1使用率' as UNDO使用状態
,round( ( ( UNDO容量KB - ( sum(bytes) / 1024 ) ) / UNDO容量KB) * 100, 2) as bytes
from dba_free_space
where tablespace_name = 'UNDOTBS1'
union
select '2アクティブ',round((sum(bytes) / 1024 / UNDO容量KB) * 100, 2) as bytes
from dba_undo_extents
where tablespace_name = 'UNDOTBS1'
and status in ('ACTIVE')
union
select '3UNEX',round((sum(bytes) / 1024 / UNDO容量KB) * 100, 2) as bytes
from dba_undo_extents
where tablespace_name = 'UNDOTBS1'
and status in ('UNEXPIRED')
union
select '4EX準備中',round((sum(bytes) / 1024 / UNDO容量KB) * 100, 2) as bytes
from dba_undo_extents
where tablespace_name = 'UNDOTBS1'
and status in ('EXPIRED')
select status, sum(bytes/1024/1024) as Mbytes from dba_undo_extents
where tablespace_name = 'UNDOTBS1'
group by status
union
select 'FREE',sum(bytes/1024/1024) as Mbytes from dba_free_space
where tablespace_name = 'UNDOTBS1'
FREE 空き領域
EXPIRED 使用可能
ACTIVE UNEXPIRED 使用中
select name,type,state,total_mb,free_mb
from sys.V_$ASM_DISKGROUP
仕様文字コード関連
SELECT NLS_CHARSET_NAME(NLS_CHARSET_ID('CHAR_CS')),
NLS_CHARSET_NAME(NLS_CHARSET_ID('NCHAR_CS')) FROM DUAL
oracleでの文字コードを調べれる
最終更新:2016年12月01日 19:04