SQLの自動化プロシージャとは何ですか?私はインタビューでそれらについて尋ねられました、そして、私はそれらに精通していません。彼らはトリガーに似ていますか?マイクロソフトから正式 https://www.simple-talk.com/sql/database-administration/setting-up-your-sql-server-agent-correctly/プロシージャを自動化するSQL
:
SQLの自動化プロシージャとは何ですか?私はインタビューでそれらについて尋ねられました、そして、私はそれらに精通していません。彼らはトリガーに似ていますか?マイクロソフトから正式 https://www.simple-talk.com/sql/database-administration/setting-up-your-sql-server-agent-correctly/プロシージャを自動化するSQL
:
SQL Serverは、特定の時間(秒)で、いくつかのSQLコードを実行する能力を持って/刻みここ
は、その上に大きな情報提供サイトです。その方法の詳細については : https://msdn.microsoft.com/en-us/library/ms187061.aspxあなたは1を設定したい場合は、システム管理者である必要が: https://msdn.microsoft.com/en-us/library/ms190268.aspx
あなたは一般的な意味で自動化された手順の話なら、あなたが話していますユーザー操作なしで実行されるタスクのリスト。データベースの文脈では、自動化されたプロシージャーは、自動的に実行される命令のリストです。今
、(私は、MySQLで動作するので、私はその命名法を使用します)のは、具体的に聞かせて:
ストアドプロシージャは、1回の呼び出しでの単位として実行される命令のリストです。例は次のようになります。
delimiter $$
create procedure HelloWorld()
begin
select 'Hello world';
end $$
delimiter ;
上記の手順は、単一の命令で呼び出すことができます。
call HelloWorld();
+-------------+
| Hello World |
+-------------+
| Hello World |
+-------------+
これは非常に簡単ですが、あなたは、ストアドプロシージャを持つもののすべての種類を行うことができます。例えば:あなたがコントロールフロー計算書を持つことができます
delimiter $$
create procedure CloseTheDay(d date)
begin
declare debits, credits decimal(18,6);
select sum(debit), sum(credit)
into debits, credits
from tranasctions as t
where t.date < date_add(d, interval +1 day);
select 'Total', debits, credits;
end $$
delimiter ;
、あなたはカーソルを持つデータをhanldeことができ、あなたは、データを挿入または削除することができます...あなたは、ストアドプロシージャとほとんど何もすることができます。その意味では、これは自動化された手順です。
あなたは
・ホープと呼ばれ、これは、私は、彼らがスケジューリング話していたことを前提としています
ができますされますでしょうプロシージャを実行したジョブ – Lamak
特定のRDBMS? – Barranka
正確に何が問題だったのですか? – Hogan