Oracle では、「ALTER TABLE ADD」ステートメントを使用して 1 つ以上の列をテーブルに追加できます。構文は「ALTER TABLE table_name ADD column_name data_typeconstraint;」です。
このチュートリアルの動作環境: Windows 7 システム、Oracle 11g バージョン、Dell G3 コンピューター。
Oracle では、「ALTER TABLE ADD
」ステートメントを使用して、1 つ以上の列をテーブルに追加できます。
テーブルに新しい列を追加するには、ALTER TABLE
ステートメントを次のように使用します。
ALTER TABLE table_name ADD column_name data_type constraint;
上記のステートメントでは、
- まず、
ALTER TABLE
句の後に、新しい列を追加するテーブルの名前を指定します。 - 次に、列名、データ型、およびその制約を指定します。
テーブルにすでに存在する列を追加することはできません。追加するとエラーが発生することに注意してください。さらに、
ALTER TABLE ADD
列ステートメントは、テーブルの最後に新しい列を追加します。 Oracle では、他のデータベース システム (MySQL など) のように新しい列の場所を指定する直接的な方法は提供していません。
複数の列を追加する場合は、次の構文を使用します。
ALTER TABLE table_name ADD ( column_name_1 data_type constraint, column_name_2 data_type constraint, ... );
この構文では、2 つの列をカンマで区切ります。
Oracle ALTER TABLE ADD 列の例
members
という名前のテーブルを作成しましょう。次の SQL ステートメントを参照してください -
-- 12c语法 CREATE TABLE members( member_id NUMBER GENERATED BY DEFAULT AS IDENTITY, first_name VARCHAR2(50), last_name VARCHAR2(50), PRIMARY KEY(member_id) );
次のステートメントは、birth_date
という名前の新しい列を members
テーブルに追加します。の場合、
列は DATE
列であり、null
を受け入れません。 行の作成時刻と更新時刻を記録するとします。次に、次のように、さらに 2 つの列
と updated_at
を追加できます。 <pre class='brush:php;toolbar:false;'>ALTER TABLE members
ADD birth_date DATE NOT NULL;</pre>
列と updated_at
列データ型は TIMESTAMP WITH TIME ZONE
です。これらの列は null
も受け入れません。 テーブルに列が存在するかどうかを確認するには、
ビューからデータをクエリします。たとえば、次のステートメントは、members
テーブルに first_name
列があるかどうかを確認します。 <pre class='brush:php;toolbar:false;'>ALTER TABLE
members ADD(
created_at TIMESTAMP WITH TIME ZONE NOT NULL,
updated_at TIMESTAMP WITH TIME ZONE NOT NULL
);</pre>
このクエリは、テーブルに列を追加する前に列が存在するかどうかを確認する場合に便利です。
PL/SQL
ブロックは、members テーブルに Effective_date
列があるかどうかを追加する前にチェックします。 <pre class='brush:php;toolbar:false;'>SELECT
COUNT(*)
FROM
user_tab_cols
WHERE
column_name = &#39;FIRST_NAME&#39;
AND table_name = &#39;MEMBERS&#39;;</pre>
このブロックが初めて実行されると、
列が members
テーブルの最後に追加されます。ただし、2 回目以降に実行すると、次のメッセージが表示されます。 <pre class='brush:php;toolbar:false;'>SET SERVEROUTPUT ON SIZE 1000000
DECLARE
v_col_exists NUMBER
BEGIN
SELECT count(*) INTO v_col_exists
FROM user_tab_cols
WHERE column_name = &#39;EFFECTIVE_DATE&#39;
AND table_name = &#39;MEMBERS&#39;;
IF (v_col_exists = 0) THEN
EXECUTE IMMEDIATE &#39;ALTER TABLE members ADD effective_date DATE&#39;;
ELSE
DBMS_OUTPUT.PUT_LINE(&#39;The column effective_date already exists&#39;);
END IF;
END;
/</pre>
これは、上記のプログラムから予想されるとおりです。
推奨チュートリアル: 「
以上がOracleテーブルに列を追加する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

Oracleは、企業が製品とサービスを通じてデジタル変革とデータ管理を達成するのを支援します。 1)Oracleは、データベース管理システム、ERP、CRMシステムなどの包括的な製品ポートフォリオを提供し、企業がビジネスプロセスを自動化および最適化するのを支援します。 2)E-BusinessSuiteやFusionApplicationsなどのOracleのERPシステムは、エンドツーエンドのビジネスプロセスの自動化を実現し、効率を改善し、コストを削減しますが、実装とメンテナンスコストが高くなります。 3)OracLedatabaseは、高い並行性と高可用性データ処理を提供しますが、ライセンスコストが高くなります。 4)パフォーマンスの最適化とベストプラクティスには、インデックス作成と分割技術の合理的な使用、定期的なデータベースのメンテナンス、コーディング仕様のコンプライアンスが含まれます。

Oracleがライブラリの構築に失敗した後、失敗したデータベースを削除する手順:SYSユーザー名を使用してターゲットインスタンスに接続します。ドロップデータベースを使用して、データベースを削除します。クエリv $データベースデータベースが削除されていることを確認します。

Oracleでは、forループループは動的にカーソルを作成できます。手順は次のとおりです。1。カーソルタイプを定義します。 2。ループを作成します。 3.カーソルを動的に作成します。 4。カーソルを実行します。 5。カーソルを閉じます。例:カーソルをサイクルごとに作成して、上位10人の従業員の名前と給与を表示できます。

Oracleビューは、Exputility:Oracleデータベースにログインしてエクスポートできます。 Expユーティリティを開始し、ビュー名とエクスポートディレクトリを指定します。ターゲットモード、ファイル形式、テーブルスペースなどのエクスポートパラメーターを入力します。エクスポートを開始します。 IMPDPユーティリティを使用してエクスポートを確認します。

Oracleデータベースを停止するには、次の手順を実行します。1。データベースに接続します。 2。すぐにシャットダウンします。 3.シャットダウンは完全に中止します。

Oracleログファイルがいっぱいになると、次のソリューションを採用できます。1)古いログファイルをクリーンします。 2)ログファイルサイズを増やします。 3)ログファイルグループを増やします。 4)自動ログ管理をセットアップします。 5)データベースを再発射化します。ソリューションを実装する前に、データの損失を防ぐためにデータベースをバックアップすることをお勧めします。

SQLステートメントは、Oracleの動的SQLを使用して、ランタイム入力に基づいて作成および実行できます。手順には、次のものが含まれます。動的に生成されたSQLステートメントを保存するための空の文字列変数を準備します。 executeを即座に使用するか、ステートメントを準備して、動的なSQLステートメントをコンパイルおよび実行します。バインド変数を使用して、ユーザー入力またはその他の動的値を動的SQLに渡します。実行するか、実行するか、動的SQLステートメントを実行します。

Oracle Deadlock Handling Guide:Deadlockを特定する:ログファイルの「Deadlock検出」エラーを確認します。デッドロック情報の表示:get_deadlockパッケージまたはv $ロックビューを使用して、デッドロックセッションとリソース情報を取得します。デッドロック図の分析:デッドロック図を生成して、ロック保持と順番状の状況を視覚化し、デッドロックの根本原因を決定します。ロールバックデッドロックセッション:キルセッションコマンドを使用してセッションをロールバックしますが、データの損失を引き起こす可能性があります。デッドロックサイクルを中断する:切断セッションコマンドを使用してセッションを切断し、保持されているロックを解放します。デッドロックの防止:クエリの最適化、楽観的なロックの使用、トランザクション管理の実施、および定期的に


ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

mPDF
mPDF は、UTF-8 でエンコードされた HTML から PDF ファイルを生成できる PHP ライブラリです。オリジナルの作者である Ian Back は、Web サイトから「オンザフライ」で PDF ファイルを出力し、さまざまな言語を処理するために mPDF を作成しました。 HTML2FPDF などのオリジナルのスクリプトよりも遅く、Unicode フォントを使用すると生成されるファイルが大きくなりますが、CSS スタイルなどをサポートし、多くの機能強化が施されています。 RTL (アラビア語とヘブライ語) や CJK (中国語、日本語、韓国語) を含むほぼすべての言語をサポートします。ネストされたブロックレベル要素 (P、DIV など) をサポートします。

WebStorm Mac版
便利なJavaScript開発ツール

VSCode Windows 64 ビットのダウンロード
Microsoft によって発売された無料で強力な IDE エディター

EditPlus 中国語クラック版
サイズが小さく、構文の強調表示、コード プロンプト機能はサポートされていません

MantisBT
Mantis は、製品の欠陥追跡を支援するために設計された、導入が簡単な Web ベースの欠陥追跡ツールです。 PHP、MySQL、Web サーバーが必要です。デモおよびホスティング サービスをチェックしてください。
