SQL Server 7.0 入門 (5)

Dec 24, 2016 pm 05:39 PM
server sql

SQL Server を使用してアプリケーションを開発する
ストアド プロシージャとトリガーを作成する
ストアド プロシージャとトリガーは、ユーザーによって作成され、サーバー上に常駐する一連の Transact SQL クエリ ステートメントです。トリガーは、特定の条件下でシステムによって実行されます。ストアド プロシージャを使用すると、アプリケーションのパフォーマンスを向上させることができます。クライアント プログラムがデータにアクセスする必要がある場合、通常、データにアクセスするために 5 つの手順を実行する必要があります:
1) クエリ ステートメントがサーバーに送信されます。
2) サーバーは SQL コードをコンパイルします。
3) 生成されたクエリの実行計画を最適化します。
4) データ エンジンがクエリを実行します。
5) 結果はクライアント プログラムに返されます。
ストアド プロシージャは、作成時にコンパイルされます。ストアド プロシージャが初めて実行されるとき、SQL Server はクエリ実行プランを生成し、将来の使用に備えて保存します。ストアド プロシージャを通じてリクエストを行う場合、上記の手順 2 と 3 は不要になり、システムのパフォーマンスが大幅に向上します。ステップ1でもパフォーマンスが向上します。この時点でサーバーに送信されるステートメントはストアド プロシージャの EXECUTE ステートメントにすぎず、大規模で複雑なクエリではないためです。この機能により、ネットワーク トラフィックが軽減されます。
ストアド プロシージャは、パフォーマンスの向上に加えて、アプリケーションの集中メンテナンスの利便性も提供します。クエリをアプリケーションに埋め込む場合。クエリを変更する必要がある場合は、アプリケーションを再コンパイルし、すべてのクライアントに再公開する必要があります。ストアド プロシージャでは、変更はユーザーに対して透過的に行われます。必要なのは、サーバー上でストアド プロシージャを再コンパイルすることだけです。
ストアド プロシージャはセキュリティ メカニズムも提供できます。ユーザーはストアド プロシージャ内のコマンドを実行する権限を持っていない場合でも、ストアド プロシージャ自体を実行する権限を持っている場合があります。場合によっては、システム管理者がユーザーにデータ変更 (UPDATE、INSERT、および DELETE) 権限を与えないことがあります。作成されたストアド プロシージャは、これらの操作を実行できます。もちろん、ユーザーにはストアド プロシージャを実行する権限が必要です。

ストアド プロシージャを作成する
ストアド プロシージャは、次の目的を達成できます。
· ステータス値を返します。
· 他のストアド プロシージャを呼び出します。
· リモートサーバー上で実行されます。
ストアド プロシージャは「sysobjects」システム テーブルにエントリを持ち、そのタイプは「P」です。ストアド プロシージャのテキストは、「syscomments」システム テーブルに保存されます。ストアド プロシージャを作成するには、Transact SQL コマンド CREATE PROCEDURE を使用します。 U 例: ■ Pubs
Go
を使用します。
プロシージャ AP_GetAutHorsforpplisher
AS を作成します。 a.au_lname、A.AU_FNAME
FROM AUTHORS A、Titleauthor Ta、Titles T、Publisher s p a (a.au_id = ta.au_id
および ta) を選択します。 Title_id = t.title_id
' t t-title d t t. ;number]
パラメータ名] [出力] [, _n]]
[{再コンパイル | 暗号化}]
[複製用] ]
As
Number は、同じ名前をグループ化するために使用される整数です。グループ化では、drop プロシージャ ステートメントを通じてすべてのプロシージャが 1 つのグループに結合されます。
@parameter_name はパラメータの名前を指定します。
RECOMPILE は、プロセスが実行されるたびにコンパイルが必要であることを意味します。
ENCRYPTION は、プロセスのテキストを「syscomments」テーブルで暗号化する必要があることを示します。
FOR REPLICATION は、送信側サーバーでプロセスを実行できないことを意味します。

ストアド プロシージャにパラメータを渡す
ストアド プロシージャはパラメータを受け入れることができます。注: プロセスのパラメーターは、ユーザーが定義したデータのタイプにすることもできます。

パラメータにデフォルト値を与えます
ユーザーはストアド プロシージャのパラメータのデフォルト値を定義することもできます。実行時に必要なパラメータが指定されていない場合、システムはデフォルト値をパラメータとして使用します。デフォルト値が定義されておらず、実行時にパラメータも指定されていない場合、SQL Server はエラーを返します。ストアド プロシージャでデフォルト値を定義し、何らかのロジックを使用してパラメータが指定されているかどうかを検出し、適切なアクションを実行することをお勧めします。 U 例: ■ Pubs を使用します
Go

Create Procedure AP_GetAutHorsForpublisher
@Publishername Varchar (40) = 'New Moon Books'
SELECT A.AU_LNAME, A.AU_FNAM e
from authors a、titleauthor ta、titles t、publishers p
WHERE a.au_id = ta.Au_id

上記は SQL Server 7.0 (V) 入門の内容です。その他の関連コンテンツについては、注意してください。 PHP 中国語 Web サイト (www.php.cn) にアクセスしてください。




このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

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

AI Clothes Remover

AI Clothes Remover

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

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

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

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

Hibernate フレームワークにおける HQL と SQL の違いは何ですか? Hibernate フレームワークにおける HQL と SQL の違いは何ですか? Apr 17, 2024 pm 02:57 PM

HQL と SQL は Hibernate フレームワークで比較されます。HQL (1. オブジェクト指向構文、2. データベースに依存しないクエリ、3. タイプ セーフティ)、SQL はデータベースを直接操作します (1. データベースに依存しない標準、2. 複雑な実行可能ファイル)。クエリとデータ操作)。

Oracle SQLでの除算演算の使用法 Oracle SQLでの除算演算の使用法 Mar 10, 2024 pm 03:06 PM

「OracleSQLでの除算演算の使用方法」 OracleSQLでは、除算演算は一般的な数学演算の1つです。データのクエリと処理中に、除算演算はフィールド間の比率を計算したり、特定の値間の論理関係を導出したりするのに役立ちます。この記事では、OracleSQL での除算演算の使用法を紹介し、具体的なコード例を示します。 1. OracleSQL における除算演算の 2 つの方法 OracleSQL では、除算演算を 2 つの異なる方法で実行できます。

Oracle と DB2 の SQL 構文の比較と相違点 Oracle と DB2 の SQL 構文の比較と相違点 Mar 11, 2024 pm 12:09 PM

Oracle と DB2 は一般的に使用される 2 つのリレーショナル データベース管理システムであり、それぞれに独自の SQL 構文と特性があります。この記事では、Oracle と DB2 の SQL 構文を比較し、相違点を示し、具体的なコード例を示します。データベース接続 Oracle では、次のステートメントを使用してデータベースに接続します: CONNECTusername/password@database DB2 では、データベースに接続するステートメントは次のとおりです: CONNECTTOdataba

MyBatis動的SQLタグのSetタグ機能の詳細説明 MyBatis動的SQLタグのSetタグ機能の詳細説明 Feb 26, 2024 pm 07:48 PM

MyBatis 動的 SQL タグの解釈: Set タグの使用法の詳細な説明 MyBatis は、豊富な動的 SQL タグを提供し、データベース操作ステートメントを柔軟に構築できる優れた永続層フレームワークです。このうち、Set タグは、UPDATE ステートメントで SET 句を生成するために使用され、更新操作でよく使用されます。この記事では、MyBatis での Set タグの使用法を詳細に説明し、特定のコード例を通じてその機能を示します。 SetタグとはMyBatiで使用するSetタグです。

SQL の ID 属性は何を意味しますか? SQL の ID 属性は何を意味しますか? Feb 19, 2024 am 11:24 AM

SQL における Identity とは何ですか? 具体的なコード例が必要です。SQL では、Identity は自動インクリメント数値の生成に使用される特別なデータ型です。多くの場合、テーブル内のデータの各行を一意に識別するために使用されます。 Identity 列は、各レコードが一意の識別子を持つようにするために、主キー列と組み合わせてよく使用されます。この記事では、Identity の使用方法といくつかの実用的なコード例について詳しく説明します。 Identity の基本的な使用方法は、テーブルを作成するときに Identity を使用することです。

SQL の 5120 エラーを解決する方法 SQL の 5120 エラーを解決する方法 Mar 06, 2024 pm 04:33 PM

解決策: 1. ログインしているユーザーがデータベースにアクセスまたは操作するための十分な権限を持っているかどうかを確認し、ユーザーが正しい権限を持っているかどうかを確認します; 2. SQL Server サービスのアカウントに指定されたファイルまたはデータベースにアクセスする権限があるかどうかを確認します。 3. 指定されたデータベース ファイルが他のプロセスによって開かれているかロックされているかどうかを確認し、ファイルを閉じるか解放して、クエリを再実行します。管理者として試してください。Management Studio をなどとして実行します。

Windows サーバーのバックアップをインストール、アンインストール、リセットする方法 Windows サーバーのバックアップをインストール、アンインストール、リセットする方法 Mar 06, 2024 am 10:37 AM

WindowsServerBackup は、WindowsServer オペレーティング システムに付属する機能で、ユーザーが重要なデータとシステム構成を保護し、中小企業、エンタープライズ レベルの企業に完全なバックアップおよび回復ソリューションを提供できるように設計されています。この機能を使用できるのは、Server2022 以降を実行しているユーザーのみです。この記事では、WindowsServerBackup のインストール、アンインストール、またはリセットの方法を説明します。 Windows Server バックアップをリセットする方法 サーバー バックアップで問題が発生したり、バックアップに時間がかかりすぎたり、保存されているファイルにアクセスできない場合は、Windows Server バックアップ設定をリセットすることを検討してください。 Windowsをリセットするには

SQL ステートメントを使用せずに Springboot+Mybatis-plus を実装して複数のテーブルを追加する方法 SQL ステートメントを使用せずに Springboot+Mybatis-plus を実装して複数のテーブルを追加する方法 Jun 02, 2023 am 11:07 AM

Springboot+Mybatis-plus が SQL ステートメントを使用して複数テーブルの追加操作を実行しない場合、私が遭遇した問題は、テスト環境で思考をシミュレートすることによって分解されます: パラメーターを含む BrandDTO オブジェクトを作成し、パラメーターをバックグラウンドに渡すことをシミュレートします。 Mybatis-plus で複数テーブルの操作を実行するのは非常に難しいことを理解してください。Mybatis-plus-join などのツールを使用しない場合は、対応する Mapper.xml ファイルを設定し、臭くて長い ResultMap を設定するだけです。対応する SQL ステートメントを記述します。この方法は面倒に見えますが、柔軟性が高く、次のことが可能です。

See all articles