目次
本篇文章讲解C语言调用mysql数据库的存储过程的方法
ホームページ データベース mysql チュートリアル C语言调用mysql的存储过程_MySQL

C语言调用mysql的存储过程_MySQL

Jun 01, 2016 pm 12:59 PM
言語 プロセス

本篇文章讲解C语言调用mysql数据库的存储过程的方法

下面假设有一张sc表,保存学生选课记录,有课程号,学号,平时分,卷面分,总分。
建立数据库表过程:
create table class(
cno varchar(8) not null,
sno varchar(8) not null,
ordinary_score int,
last_score int,
all_score int
);

存储过程
由括号包围的参数列必须总是存在。如果没有参数,也该使用一个空参数列()。每个参数 默认都是一个IN参数。要指定为其它参数,可在参数名之前使用关键词IN(默认,可缺省) OUT或INOUT。
IN参数是只传入
OUT参数是只传出
INOUT参数是既传入又传入,即双向传递

指定参数为IN, OUT, 或INOUT 只对PROCEDURE是合法的。(FUNCTION参数总是被认为是IN参数)

建立存储过程,传入平时分x,卷面分y,平时分所占的比率pert,学号,课程号;建立过程如下

<code class="hljs oxygene">delimiter //
CREATE PROCEDURE cal_grade(x INT,y INT,out t int,pert float,s VARCHAR(8),c VARCHAR(8))
LABEL_PROC:
BEGIN


  IF ( x < 0 || x > 100 ) THEN
      SET t = -1;
      LEAVE LABEL_PROC;
  END IF;


  IF ( y < 0 || y > 100 ) THEN 
      SET t = -2;
      LEAVE LABEL_PROC;
  END IF;


  SET t = ROUND( x*pert + y*(1-pert) );

  UPDATE sc SET ordinary_score=x,last_score=y WHERE sno=s AND cno=c AND tno=tn;

END LABEL_PROC //

delimiter ;
</code>
ログイン後にコピー

<strong>C语言调用</strong>

<code class="hljs oxygene"><code class="hljs perl">#include <stdio.h>
#include "mysql.h"
int main()
{
    MYSQL *my_connection;
    MYSQL_RES *res_ptr;
    MYSQL_ROW sqlrow;

    char buf[100];

    my_connection = mysql_init (NULL);
    //下面连接的最后一个参数必须为CLIENT_MULTI_STATEMENTS,不然就会报错select error: PROCEDURE  *** can&rsquo;t return a result set in the given context
    my_connection = mysql_real_connect (my_connection, "localhost", "root", "root", "test", 0, NULL, CLIENT_MULTI_STATEMENTS);

    sprintf (buf, "call cal_grade(%d,%d,@t,%f,%s,%s)", 10, 10, 0.3, 123, 456);

    if ( mysql_query (my_connection, buf) )
        sprintf (stderr, mysql_error (my_connection));
    else
    {
        //获得返回参数@t,@t是传出参数
        mysql_query (my_connection, "select @t");
        res_ptr = mysql_store_result (my_connection);
        if (res_ptr)
        {
           sqlrow = mysql_fetch_row (res_ptr);

           if (!strcmp (sqlrow[0], "-1"))
               printf ("平时分不在范围之内\n");
           else if (!strcmp (sqlrow[0], "-2"))
               printf ("卷面分不在范围之内\n");
           else
               printf ("总分为:%s\n", sqlrow[0]);
        }
        mysql_free_result (res_ptr);
    }
    mysql_close (my_connection);

    return 0;
}</stdio.h></code></code>
ログイン後にコピー
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、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衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

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

SublimeText3 中国語版

SublimeText3 中国語版

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

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

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

Windows 11で不要な表示言語を完全に削除する方法 Windows 11で不要な表示言語を完全に削除する方法 Sep 24, 2023 pm 04:25 PM

同じセットアップで長時間作業したり、PC を他の人と共有したりします。いくつかの言語パックがインストールされている可能性があり、競合が発生することがよくあります。そこで、Windows 11 で不要な表示言語を削除しましょう。競合といえば、複数の言語パックがある場合、誤って Ctrl+Shift を押すとキーボード レイアウトが変更されてしまいます。これに注意しないと、当面の作業に支障をきたす可能性があります。それでは、早速メソッドの説明に入りましょう。 Windows 11 から表示言語を削除するにはどうすればよいですか? 1. [設定] から [+] を押して設定アプリを開き、ナビゲーション ペインから [時刻と言語] に移動して、[言語と地域] をクリックします。 Windows 削除する表示言語の横にある省略記号をクリックし、ポップアップ メニューから [削除] を選択します。クリック "

iPhoneで言語を変更する3つの方法 iPhoneで言語を変更する3つの方法 Feb 02, 2024 pm 04:12 PM

iPhone が最も使いやすい電子機器の 1 つであることは周知の事実であり、その理由の 1 つは、自分好みに簡単にカスタマイズできることです。個人設定では、iPhone のセットアップ時に選択した言語とは別の言語に変更できます。複数の言語に精通している場合、または iPhone の言語設定が間違っている場合は、以下で説明するように変更できます。 iPhoneの言語を変更する方法[3つの方法] iOSでは、ユーザーはさまざまなニーズに合わせてiPhoneの優先言語を自由に切り替えることができます。 Siri との対話言語を変更して、音声アシスタントとのコミュニケーションを容易にすることができます。同時に、ローカルキーボードを使用する場合、複数の言語を簡単に切り替えることができ、入力効率が向上します。

大規模な言語モデルに包括的なオーディオビジュアル機能を追加し、DAMO アカデミーがソース Video-LLaMA をオープンします 大規模な言語モデルに包括的なオーディオビジュアル機能を追加し、DAMO アカデミーがソース Video-LLaMA をオープンします Jun 09, 2023 pm 09:28 PM

今日のソーシャル メディアやインターネット文化においてビデオの役割はますます重要になっており、Douyin、Kuaishou、Bilibili などは数億人のユーザーに人気のプラットフォームとなっています。ユーザーは、自分の人生の瞬間、創造的な作品、興味深い瞬間、その他のビデオを中心としたコンテンツを共有して、他のユーザーと交流し、コミュニケーションを図ります。最近、大規模な言語モデルが優れた機能を実証しました。大型モデルに「目」と「耳」を持たせて、動画を理解してユーザーと対話できるようにすることはできないだろうか。この問題から出発して、DAMO アカデミーの研究者は、包括的なオーディオビジュアル機能を備えた大規模モデルである Video-LLaMA を提案しました。 Video-LLaMA は、ビデオ内のビデオ信号とオーディオ信号を認識して理解することができ、ユーザーが入力した指示を理解して、オーディオとビデオに基づいた一連の複雑なタスクを完了できます。

Win10コンピュータの言語を中国語に設定するにはどうすればよいですか? Win10コンピュータの言語を中国語に設定するにはどうすればよいですか? Jan 05, 2024 pm 06:51 PM

コンピュータ システムをインストールしただけで、システムが英語になっている場合があります。この場合、コンピュータの言語を中国語に変更する必要があります。それでは、win10 システムでコンピュータの言語を中国語に変更するにはどうすればよいでしょうか?具体的な操作方法を説明します。 。 win10 でコンピューターの言語を中国語に変更する方法 1. コンピューターの電源を入れ、左下隅にあるスタート ボタンをクリックします。 2. 左側の設定オプションをクリックします。 3. 開いたページで「時刻と言語」を選択します 4. 開いたら、左側の「言語」をクリックします 5. ここで、希望するコンピューター言語を設定できます。

なんという騒音でしょう! ChatGPT は言語を理解できますか? PNAS:まず「理解」とは何かを勉強しましょう なんという騒音でしょう! ChatGPT は言語を理解できますか? PNAS:まず「理解」とは何かを勉強しましょう Apr 07, 2023 pm 06:21 PM

機械がそれについて考えることができるかどうかを問うのは、潜水艦が泳げるかどうかを問うようなものです。 ——ダイクストラ ChatGPT のリリース前から、業界はすでに大規模モデルによってもたらされる変化の匂いを嗅いでいました。昨年10月14日、サンタフェ研究所のメラニー・ミッチェル教授とデビッド・C・クラカウアー教授は、arXivに関するレビューを発表し、「大規模な事前トレーニング済み言語モデルが言語を理解できるかどうか」のあらゆる側面を包括的に調査した。 「賛成」と「反対」の議論、およびこれらの議論から導き出される広範な知能科学における重要な問題について説明します。論文リンク: https://arxiv.o

エージェントの境界の探索: 大規模な言語モデル エージェントのパフォーマンスを包括的に測定および改善するためのモジュール式ベンチマーク フレームワークである AgentQuest エージェントの境界の探索: 大規模な言語モデル エージェントのパフォーマンスを包括的に測定および改善するためのモジュール式ベンチマーク フレームワークである AgentQuest Apr 11, 2024 pm 08:52 PM

大規模モデルの継続的な最適化に基づいて、LLM エージェント - これらの強力なアルゴリズム エンティティは、複雑な複数ステップの推論タスクを解決する可能性を示しています。自然言語処理から深層学習に至るまで、LLM エージェントは徐々に研究や業界の焦点になりつつあります。LLM エージェントは、人間の言語を理解して生成するだけでなく、戦略を策定し、多様な環境でタスクを実行し、API 呼び出しやコーディングを使用して構築することもできます。ソリューション。この文脈において、AgentQuest フレームワークの導入はマイルストーンであり、LLM エージェントの評価と進歩のためのモジュール式ベンチマーク プラットフォームを提供するだけでなく、研究者にこれらのエージェントのパフォーマンスを追跡および改善するための強力なツールも提供します。より細かいレベル

口を動かすだけで原神がプレイできる! AIを使ってキャラクターを切り替えて敵を攻撃するネチズン「アヤカ、神里流フロストデストラクションを使って」 口を動かすだけで原神がプレイできる! AIを使ってキャラクターを切り替えて敵を攻撃するネチズン「アヤカ、神里流フロストデストラクションを使って」 May 13, 2023 pm 07:52 PM

過去 2 年間で世界中で人気を博した国産ゲームといえば、間違いなく原神が挙げられます。 5月に発表された今年第1四半期のモバイルゲーム収益調査報告書によると、「原神」が5億6,700万ドルの絶対的な優位性を獲得し、カードを引くモバイルゲームの中で断然1位を獲得したことも発表された。わずか 18 年でオンライン化され、数か月後、モバイル プラットフォームだけでの総収益は 30 億米ドル (約 130 億リンギット) を超えました。さて、Xumi オープン前の最後の 2.8 アイランド バージョンは長い間待ち望まれており、長いドラフト期間を経て、ようやく新しいプロットとプレイできるエリアが登場しました。でも、「肝臓皇帝」が何人いるのかは分かりませんが、島の探索が完了し、また草が生え始めました。宝箱は合計 182 個 + モラボックス 1 個 (含まれていません) 草期間が長くても心配する必要はありません。いや、長い草のあいだに

修正: Windows 11 では Alt + Shift を押しても言語が変更されません 修正: Windows 11 では Alt + Shift を押しても言語が変更されません Oct 11, 2023 pm 02:17 PM

Windows 11 では Alt+Shift を押しても言語は変更されませんが、Win+Space キーを使用しても同じ効果が得られます。また、キーボードの右側にある Alt+Shift ではなく、必ず左側の Alt+Shift を使用してください。 Alt+Shift で言語を変更できないのはなぜですか?これ以上言語を選択することはできません。入力言語のホットキーが変更されました。最新の Windows アップデートのバグにより、キーボード言語を変更できなくなります。この問題を解決するには、最新のアップデートをアンインストールしてください。あなたは、同じホットキーを使用して他のアクションを実行するアプリケーションのアクティブ ウィンドウにいます。 Windows 11 で AltShift を使用して言語を変更するにはどうすればよいですか? 1. 正しいキー シーケンスを使用する まず、+ の組み合わせが正しい方法で使用されていることを確認してください。

See all articles