この例は、Windowsの下でのみテストに合格し、Linuxでテストされませんでした。ご質問がある場合は、メールでお問い合わせください〜
1。Node.jsとMySQLをインストールしてください。ここに少しあります(自分で検索)...;
2.テストと呼ばれるデータベースを作成し、user_infoというテーブルを作成します(テストのみ)…
ここでは、MySQLで使用されるユーザー名はルートで、パスワードは123456であると想定されています。
対応するMySQLは次のとおりです。
コードコピーは次のとおりです。
/**
*テストという名前のデータベースを作成します
*/
存在する場合はデータベースをドロップします。
データベーステストを作成します。
テストを使用します。
/**
* user_infoテーブルを作成します
*/
「user_info」が存在する場合はテーブルをドロップします。
テーブルを作成します `user_info`(
`userid` int(10)null auto_incrementではない、
`username` varchar(20)デフォルトnull、
主キー(「userid」)
)Engine = Innodb auto_increment = 4デフォルトcharset = utf8;
/**
* 3つのレコードを挿入します
*/
user_info値に挿入(null、 'zhang yi')、(null、 'zhang er')、(null、 'Zhang San');
3.ストアドプロシージャを作成します(非常に冗長に書かれ、意図的に...文法> _ <)を学ぶだけです。
コードコピーは次のとおりです。
デリミッター$$
「test」が存在する場合は手順を削除します。`proc_simple`$$
プロシージャProc_simple(uid int(10)、out uname varchar(2)、out totalcount int)の作成)
始める
STR_NAME VARCHAR(20)を宣言します。
@str_name = ''を設定します。
TotalCount = 0を設定します。
count(1)、username intotalcount、@str_name from user_info from userid = uidを選択します。
uname = @str_name;
uname、totalcountを選択します。
$$を終了します
区切り文字;
4。電話をかけるプログラムを書きます(それがsql.jsという名前のファイルであると仮定して);
コードコピーは次のとおりです。
/**
* JetBrains WebStormで作成されました。
*ユーザー:meteoric_cry
*日付:12-12-28
*時間:00:18 AM
*このテンプレートを変更するには、ファイルを使用します|設定|ファイルテンプレート。
*/
var mysql = require( 'mysql');
var connection = mysql.createconnection({
ホスト: 'LocalHost'、
ポート:3306、
ユーザー:「ルート」、
パスワード:'123456 '、
データベース:「テスト」、
Charset: 'utf8_general_ci'、
デバッグ:false
});
connection.connect();
connection.query( 'call proc_simple(1、@a、@b);'、function(err、rows、fields){
if(err){
エラーを投げます。
}
var results = rows [0];
var row = results [0];
console.log( "username:"、row.uname、 "count:"、row.totalcount);
});
connection.end();
5.サンプルプログラムを実行します。