1. データベースへのリンク方法
オペレーティングシステムによる検証方法:
SQL>conn / as sysdba
ログイン後にコピー
データベースによる検証方法
SQL>CONN username/password @databaseIdentified AS sysdba
ログイン後にコピー
databaseIdentified はリンク識別子であり、データベースとは関係がなく、自由に名前を付けることができます。
AS の後にはロールが続きます
2. SQL スクリプト ファイルの実行方法
SQL>start file_name
SQL>@ file_name
ログイン後にコピー
複数の SQL ステートメントをテキスト ファイルに保存できるので、このファイル内のすべての SQL ステートメントを実行したい場合は、上記のコマンドのいずれかを使用します。 、これは DOS のバッチ処理に似ています。
3. 最後の SQL ステートメントを再実行します run
4. 表示された内容を指定したファイルに出力します
SQL> SPOOL file_name
ログイン後にコピー
入力した SQL ステートメントを含む、画面上のすべての内容がファイルに含まれます。
5. スプール出力をオフにする
スプール出力をオフにした場合にのみ、出力ファイルに出力内容が表示されます。
6.テーブルの構造を表示します
SQL> desc table_name
ログイン後にコピー
7. COL コマンド:
書式設定メソッド
COL columnname format a20
ログイン後にコピー
を使用してデフォルトの列ヘッダーを変更します
COLUMN column_name HEADING column_heading
For example:
Sql>select * from dept;
DEPTNO DNAME LOC
ログイン後にコピー
---------- --------- -- ---------------- --------
10 会計ニューヨーク
sql>col LOC heading location
sql>select * from dept;
DEPTNO DNAME location
ログイン後にコピー
----------- -------- --- ------------------ ----------
10 ACCOUNTING NEW YORK
8. コマンドを設定します:
私の通常の使用
set linesize 1000
setラップオフ
SQL ステートメントの長さが LINESIZE より大きい場合、表示中に SQL ステートメントをインターセプトするかどうか。
SQL> SET WRA[P] {ON|OFF}
ログイン後にコピー
出力行の長さが設定行長(set linesize n コマンドで設定)より大きい場合、wrap on に設定すると、出力行内の余分な文字は別の行に表示されます。それ以外の場合は、出力行が表示されます。それ以上の文字は切り取られて表示されません。
9. SQL バッファーの現在の行に表示される最初の文字列
C[HANGE] /old_value/new_value
SQL> l
1* select * from dept
SQL> c/dept/emp
1* select * from emp
ログイン後にコピー
10 を変更します。 SQLバッファー内のSQL文を表示し、list nはSQLバッファーのn行目を表示し、n行目を現在の行にする
10。 SQL バッファ
11 の現在行の下に 1 行以上追加します。指定されたテキストを SQL バッファ
A[PPEND]
SQL> select deptno,
2 dname
3 from dept;
DEPTNO DNAME
ログイン後にコピー
---------- --------------
10 ACCOUNTING
20 RESEARCH
30 SALES
40 OPERATIONS
SQL> L 2
2* dname
SQL> a ,loc
2* dname,loc
SQL> L
1 select deptno,
2 dname,loc
3* from dept
SQL> /
DEPTNO DNAME LOC
---------- -------------- -------------
10 ACCOUNTING NEW YORK
20 RESEARCH DALLAS
30 SALES CHICAGO
40 OPERATIONS BOSTON
ログイン後にコピー
12 の現在行の末尾に追加します。
13 で実行したばかりの SQL ステートメントを再度実行します。ストアドプロシージャ
EXECUTE procedure_name
ログイン後にコピー
を実行する
14. SQL*plusコマンド
のヘルプを表示
15. sql*plus システム変数の値、または sql*plus 環境変数の値を表示します。
Syntax
SHO[W] option
ログイン後にコピー
1) 現在の関数、ストアド プロシージャ、トリガー、パッケージを作成しているエラー メッセージを表示します。関数やストアド プロシージャなどの作成時にエラーが発生した場合、このコマンドを使用してエラーの発生箇所と対応するエラー メッセージを確認し、修正して再度コンパイルすることができます。
3) . 初期化パラメータの値を表示します:
4) . データベースのバージョンを表示します:
6) . 現在のユーザー名を表示します:
show PARAMETERS [parameter_name]
ログイン後にコピー
***** ******* *************************************
ORA-00054: リソースがビジーですNOWAIT を指定して取得します
症状:
Locked_mode が 2、3、および 4 の場合、DML (挿入、削除、更新、選択) 操作には影響しませんが、DDL (変更、ドロップなど) 操作では ora-00054 エラーが表示されます。 。
主キー制約と外部キー制約がある場合、更新/削除... ; 4 つまたは 5 つのロックが生成される可能性があります。
DDLステートメントのロックは6です。
処理方法:
DBA は、次の SQL ステートメントを使用して現在のデータベースのロック状況を確認できます:
select object_id,session_id,locked_mode from v$locked_object
または select t2.username,t2.sid,t2; .serial#, t2.logon_time
from v$locked_object t1,v$session t2
where t1.session_id=t2.sid order by t2.logon_time
長時間出現する列がある場合、ロックがかからない可能性があります。解放されます。
次の SQL ステートメントを使用して、長期間解放されていない異常なロックを強制終了できます:
alter system kill session 'sid,serial#';
最終的に通常に戻ります。