タグ別アーカイブ: ストアドプロシージャ

ストアドプロシージャ デバッグ 変数をチェックしたいときはテーブルに出力する

ストアドプロシージャ デバッグ 変数をチェックしたいときはテーブルに出力する

ストアドプロシージャがいくつも入れ子状態になっていると変数やテーブルに挿入したデータの値が正しいかを調べる必要があります。
続きを読む

ストアドプロシージャ、テーブルのデータを使って文字を結合して出力したい

/********************************
テーブルのデータを使って文字を結合して出力したい
用途は、テーブルデータを別のサーバのテーブルにインサートしたいときに大量にINSERT文を
SELECT出力のときに文字列として出力したい。
例えば
テーブルデータに
041という文字列があったとして、
「INSERT INTO TEST ([CODE],[NAME])VALUES(041, ‘test01’)」
という文字列をSELECTしたときに出力するというもの。
こういった処理はエクセルのマクロでもできるけど、タブとか空白とかが入り込むので
それを削除する(置換)が面倒だったりする。
結局は、手間がかかるのはどちらも同じなので使いやすい方で出力すればOK

*/
test_tableにCODE,NAMEのカラムが存在する。
INSERT文をテーブルのレコードを使って文字として出力して、別の環境にINSERTしたいとする。
テーブルには以下のデータが入っているとする
ID CODE NAME
1 041 test01
2 041 test02
3 041 test03
4 NULL test04
5 NULL test04

–なぜかカッコと中括弧が正常に表示されてないことがあるので、分解するとうまくいく
–シングルクォーテーションが必要なときは””4つで1つのシングルクォーテーションになる。これは2つが囲みで2つが1つをあらわすので4つで1つ

–出力例、シングルクォーテーションでNAMEカラムを囲った
–INSERT INTO TEST ([CODE],[NAME])VALUES(041, ‘test01’)

CASTでなくて、CONVERTもある
CONVERT(nvarchar(50),文字列)
CAST(文字列 as nvarchar(50))

ついでにINT変換はこんな感じ。文字列、変換、数字

sqlの勉強 グループの中で連番になっていないデータやグループを探す方法を考え中

sqlの勉強 グループの中で連番になっていないデータやグループを探す方法を考え中

例えば
Aグループの中に複数のデータがありそのレコードの番号はグループごとに連番が割り振られる
ただしデータ削除でグループ内で連番の規則性が損なわれた
続きを読む

mysqlでストアドプロシージャを勉強中。MS sql serverとはまた違う

平成30年1月13日
mysqlでストアドプロシージャを勉強中。MS sql serverとはまた違う

mysql> show databases;
+——————–+
| Database |
+——————–+
| information_schema |
| masedaDB |
| test2017 |
+——————–+
3 rows in set (0.00 sec)
続きを読む

SQLSERVER ストアドプロシージャ 初心者向け 使い方 注意点 デバッグの方法は?

SQLSERVER ストアドプロシージャ 初心者向け 使い方 注意点 デバッグの方法は?

自分がストアドプロシージャを触り始めていろいろと気づいたことを書いていきます。
もしかすると今後さわることもなくて、数年後にまた使うことがあるので、忘れないために備忘録です。

私自身がストアドプロシージャを触り始めてまだ半年程度なので、気づいていない点や勘違いをしていることがあります。その点をご考慮ください。
続きを読む

中身紹介、SQL Server 2005 ストアドプロシージャプログラミング (SQL Server Books)

中身紹介、SQL Server 2005 ストアドプロシージャプログラミング (SQL Server Books)
              デヤン・サンデリック,NRIラーニングネットワーク株式会社 沖 要知,トップスタジオ

仕事でストアドプロシージャが必要になり見よう見まねで作成中。
でも、やっぱり書籍が必要になり、高め¥ 6,264な金額ですが、背に腹は代えられない。
買いました。
中身が知りたくても近所の本屋に在庫はないので、中身がどんな内容かは諦めてアマゾンで買いました。
もし、ご興味のある方は、参考にしてください。
続きを読む