存储过程 事物 实现转账

Jun 07, 2016 pm 03:14 PM
c sqlserver ストレージ 成し遂げる データベース 移行 プロセス

sqlserver数据库 create proc usp_zhuanzhang @outputnumber varchar(10),@inputnumber varchar(10),@money money,@result bit output as begin begin tran begin try update T_zhuanzhang set outinmoney=outinmoney-@money wherenumber=@outputnumber and

     sqlserver数据库

create proc usp_zhuanzhang @outputnumber varchar(10),@inputnumber varchar(10),@money money,@result bit output as
begin
begin tran
begin try
update T_zhuanzhang set  outinmoney=outinmoney-@money wherenumber=@outputnumber and @money update T_zhuanzhang set  outinmoney=outinmoney+@money wherenumber=@inputnumber and @money set @result=1;
commit
end try
begin catch
set @result=0;
rollback
end catch
end

 

ADO

protected void Button1_Click(object sender, EventArgs e)
        {
            string constr = @"Data Source=PC-20121107KEFI\MSAS;Initial Catalog=Company;User ID=sa;Password=12345";
            using (SqlConnection conn = new SqlConnection(constr)) {
                conn.Open();
                using (SqlCommand cmd = conn.CreateCommand())
                {
                    cmd.CommandType = CommandType.StoredProcedure;
                    string usp_zhuanzhang = "usp_zhuanzhang";
                    cmd.CommandText=usp_zhuanzhang;
                    cmd.Parameters.Add(new SqlParameter("@outputnumber",TextBox1.Text));
                    cmd.Parameters.Add(new SqlParameter("@inputnumber",TextBox3.Text));
                    cmd.Parameters.Add(new SqlParameter("@money",TextBox2.Text));
                    SqlParameter prm=new SqlParameter("@result",SqlDbType.Bit);
                    cmd.Parameters.Add(prm);
                    prm.Direction=ParameterDirection.Output;
                    SqlTransaction tran =new SqlTransaction();                   
                    cmd.ExecuteNonQuery();
                   
                    if ((bool)prm.Value==true)
                    {
                        Label4.Text = "转账成功!";
                        tran.Commit();
                    }
                    else {
                        Label4.Text = "转账失败!";
                        tran.Rollback();
                    }
                }
            }
        }

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、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)

Alipay送金に手数料はかかりますか? Alipay送金に手数料はかかりますか? Apr 26, 2024 am 10:02 AM

1. Alipay を使用して送金する場合、取引の種類によって手数料が異なります。 2. 内部送金(アリペイ口座間の送金)は手数料無料ですが、銀行カードへの送金には0.1%の手数料がかかります。 3. したがって、ユーザーは、送金方法を選択する際に、自分のニーズに応じて適切な取引タイプを選択し、手数料を節約することができます。

iOS 18では、紛失または破損した写真を復元するための新しい「復元」アルバム機能が追加されます iOS 18では、紛失または破損した写真を復元するための新しい「復元」アルバム機能が追加されます Jul 18, 2024 am 05:48 AM

Apple の最新リリースの iOS18、iPadOS18、および macOS Sequoia システムでは、さまざまな理由で紛失または破損した写真やビデオをユーザーが簡単に回復できるように設計された重要な機能が写真アプリケーションに追加されました。この新機能では、写真アプリのツール セクションに「Recovered」というアルバムが導入され、ユーザーがデバイス上に写真ライブラリに含まれていない写真やビデオがある場合に自動的に表示されます。 「Recovered」アルバムの登場により、データベースの破損、カメラ アプリケーションが写真ライブラリに正しく保存されない、または写真ライブラリを管理するサードパーティ アプリケーションによって失われた写真やビデオに対する解決策が提供されます。ユーザーはいくつかの簡単な手順を実行するだけで済みます

PHP でデータベース接続エラーを処理する方法 PHP でデータベース接続エラーを処理する方法 Jun 05, 2024 pm 02:16 PM

PHP でデータベース接続エラーを処理するには、次の手順を使用できます。 mysqli_connect_errno() を使用してエラー コードを取得します。 mysqli_connect_error() を使用してエラー メッセージを取得します。これらのエラー メッセージをキャプチャしてログに記録することで、データベース接続の問題を簡単に特定して解決でき、アプリケーションをスムーズに実行できるようになります。

PHP で MySQLi を使用してデータベース接続を確立するための詳細なチュートリアル PHP で MySQLi を使用してデータベース接続を確立するための詳細なチュートリアル Jun 04, 2024 pm 01:42 PM

MySQLi を使用して PHP でデータベース接続を確立する方法: MySQLi 拡張機能を含める (require_once) 接続関数を作成する (functionconnect_to_db) 接続関数を呼び出す ($conn=connect_to_db()) クエリを実行する ($result=$conn->query()) 閉じる接続 ( $conn->close())

WeChat送金で返金を受ける方法 WeChat送金で返金を受ける方法 May 08, 2024 pm 01:18 PM

1. WeChat アプリを開き、返信する必要がある転送メッセージを見つけてクリックして入力します。 2. 転送の詳細インターフェイスで、[戻る] オプションを見つけてクリックします。 3. ポップアップウィンドウで[返却]ボタンをクリックし、送金した金額を返却します。

Golangでデータベースコールバック関数を使用するにはどうすればよいですか? Golangでデータベースコールバック関数を使用するにはどうすればよいですか? Jun 03, 2024 pm 02:20 PM

Golang でデータベース コールバック関数を使用すると、次のことを実現できます。 指定されたデータベース操作が完了した後にカスタム コードを実行します。追加のコードを記述せずに、個別の関数を通じてカスタム動作を追加します。コールバック関数は、挿入、更新、削除、クエリ操作に使用できます。コールバック関数を使用するには、sql.Exec、sql.QueryRow、または sql.Query 関数を使用する必要があります。

Golangを使用してリモートデータベースに接続するにはどうすればよいですか? Golangを使用してリモートデータベースに接続するにはどうすればよいですか? Jun 01, 2024 pm 08:31 PM

Go 標準ライブラリのデータベース/SQL パッケージを通じて、MySQL、PostgreSQL、SQLite などのリモート データベースに接続できます。データベース接続情報を含む接続文字列を作成します。 sql.Open() 関数を使用してデータベース接続を開きます。 SQL クエリや挿入操作などのデータベース操作を実行します。 defer を使用してデータベース接続を閉じ、リソースを解放します。

さまざまなデータベースへの PHP 接続: MySQL、PostgreSQL、Oracle など さまざまなデータベースへの PHP 接続: MySQL、PostgreSQL、Oracle など Jun 01, 2024 pm 03:02 PM

PHP データベース接続ガイド: MySQL: MySQLi 拡張機能をインストールし、接続 (サーバー名、ユーザー名、パスワード、データベース名) を作成します。 PostgreSQL: PgSQL 拡張機能をインストールし、接続 (ホスト、データベース名、ユーザー、パスワード) を作成します。 Oracle: OracleOCI8 拡張機能をインストールし、接続 (サーバー名、ユーザー名、パスワード) を作成します。実際のケース: MySQL データ、PostgreSQL クエリ、OracleOCI8 更新レコードを取得します。

See all articles