C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

Re[13]: SQL Server 2005 CLR VB2005 DBアクセス方法


(過去ログ 10 を表示中)

[トピック内 20 記事 (1 - 20 表示)]  << 0 >>

■113 / inTopicNo.1)  SQL Server 2005 CLR VB2005 DBアクセス方法
  
□投稿者/ ろーちゃん (1回)-(2007/01/17(Wed) 09:43:32)

分類:[.NET 全般] 

SQL Server 2005 CLR ですが VB2005でOleDbConnection.Openできないのですが、、、

VB2005のWinAppから呼び出すとちゃんとOPENするのですが、
SQL Server 2005 から呼び出すとOPENでこけます。

ソースは以下です
----
Imports System.Data.OleDb


connStr = "Provider=SQLOLEDB.1;Password=xxxxxxx;Persist Security
Info=True;User ID=sa;Initial Catalog=tbl_1;Data Source=SV01"

m_conn = New OleDbConnection(connStr)
m_conn.Open()
----
System.Data.OleDb が使えないのでしょうか?

OS:WinXPSP2
VS2005Developer
引用返信 編集キー/
■117 / inTopicNo.2)  Re[1]: SQL Server 2005 CLR VB2005 DBアクセス方法
□投稿者/ (報告) (1回)-(2007/01/17(Wed) 10:13:45)
2007/01/17(Wed) 19:23:23 編集(投稿者)
2007/01/17(Wed) 10:15:07 編集(投稿者)

マルチポスト
http://dobon.net/cgi-bin/vbbbs/cbbs.cgi?mode=one&namber=18797&type=0&space=0&no=0
http://www.atmarkit.co.jp/bbs/phpBB/viewtopic.php?topic=36088&forum=26
http://hanatyan.sakura.ne.jp/bbs/wforum.cgi?no=4824&reno=no&oya=4824&mode=msgview&page=0

#マルチポスト先を1件追加
#マルチポスト先をさらに1件追加
引用返信 編集キー/
■125 / inTopicNo.3)  Re[1]: SQL Server 2005 CLR VB2005 DBアクセス方法
□投稿者/ はつね (45回)-(2007/01/17(Wed) 12:25:13)
はつね さんの Web サイト
No113 (ろーちゃん さん) に返信
> SQL Server 2005 CLR ですが VB2005でOleDbConnection.Openできないのですが、、、

SQL Server 2005 CLRの中から、SQL Server 2005 CLRが接続できないという意味でしょうか。
こけるという事ですが、何がこけるのでしょうか。そのときに表示されるエラーメッセージなどがあったら教えて下さい。
環境作ってやってみればいいのですが、今は手元にないのでよろしくお願いします。

> VB2005のWinAppから呼び出すとちゃんとOPENするのですが、

呼び出し元のSQL Server 2005稼動マシンでWinAppを動作させた結果でしょうか?


> connStr = "Provider=SQLOLEDB.1;Password=xxxxxxx;Persist Security
> Info=True;User ID=sa;Initial Catalog=tbl_1;Data Source=SV01"

呼び出し元のSQL Server 2005には、指定したProviderがインストールされていますか?

####
マルチポストとの事ですので、全マルチポスト先の間での情報共有(他のポスト先で問題解決の情報が投稿されたり、何か質問を受けて回答した場合に、その他のポスト先に必ず投稿する)をお願いします。
現実世界で、複数の人に個別に問い合わせをしないですよね?
もししてしまって、即答がなかったときには随時状況を連絡したりしますよね?
ネットでも同じです。
# そういった事後活動が面倒なのでマルチポストはやらない方が楽です。

引用返信 編集キー/
■129 / inTopicNo.4)  Re[2]: SQL Server 2005 CLR VB2005 DBアクセス方法
□投稿者/ ろーちゃん (3回)-(2007/01/17(Wed) 14:04:20)
No125 (はつね さん) に返信
> ■No113 (ろーちゃん さん) に返信
>>SQL Server 2005 CLR ですが VB2005でOleDbConnection.Openできないのですが、、、
>
> SQL Server 2005 CLRの中から、SQL Server 2005 CLRが接続できないという意味でしょうか。
> こけるという事ですが、何がこけるのでしょうか。そのときに表示されるエラーメッセージなどがあったら教えて下さい。
> 環境作ってやってみればいいのですが、今は手元にないのでよろしくお願いします。

Partial Public Class SQLCLR
<SqlFunction()> _
Public Shared Function HelloSqlClr() As SqlString

connStr = "Provider=SQLOLEDB.1;Password=xxxxxx;Persist Security Info=True;User ID=sa;Initial Catalog=tbl_1;Data Source=xxxxx"
m_conn = New OleDbConnection(connStr)
m_da = New OleDbDataAdapter
Try
m_conn.Open()

ここでCatchに入ります



> 呼び出し元のSQL Server 2005には、指定したProviderがインストールされていますか?

localのSQL ServerでやっているのでDBドライバは問題ないと思います



> マルチポストとの事ですので、全マルチポスト先の間での情報共有(他のポスト先で問題解決の情報が投稿されたり、何か質問を受けて回答した場合に、その他のポスト先に必ず投稿する)をお願いします。
> 現実世界で、複数の人に個別に問い合わせをしないですよね?
> もししてしまって、即答がなかったときには随時状況を連絡したりしますよね?
> ネットでも同じです。
> # そういった事後活動が面倒なのでマルチポストはやらない方が楽です。

事は急を要するので、できるだけ大勢の人に見てもらうために、投稿しました。
CLRにはやり方がさまざまあるようなので、スキルアップという点でも有効だと思います。
あらゆるところでコテハンでやっているので2chで匿名で投稿しても投稿内容でばれてしまうことがしばしば・・・
別の場所では「ろーちゃんて有名」との声も。
引用返信 編集キー/
■138 / inTopicNo.5)  Re[3]: SQL Server 2005 CLR VB2005 DBアクセス方法
□投稿者/ ろーちゃん (5回)-(2007/01/17(Wed) 18:03:04)
一応

http://www.atmarkit.co.jp/fdb/rensai/sqls05try05/sqls05try05_1.html
で、OPENはできるようになりました。
あと、SqlDataReader の値を吸い出して、ファイルに書き出すのですが
Dim sw As New StreamWriter("C:\sql\Test.txt", False, System.Text.Encoding.GetEncoding("Shift_Jis"))

で、セキュリティエラー(permissionがどうやらこうやら)が出て、
どうしていいかわかりません。C:\sqlフォルダーのセキュリティをどうにかしないと
いけないみたいですが、そこで行き詰ってます。
どうすればいいでしょうか?
引用返信 編集キー/
■139 / inTopicNo.6)  Re[3]: SQL Server 2005 CLR VB2005 DBアクセス方法
□投稿者/ シャノン (21回)-(2007/01/17(Wed) 18:15:32)
No129 (ろーちゃん さん) に返信
> 事は急を要するので、できるだけ大勢の人に見てもらうために、投稿しました。

「急を要する」というのは、マルチの理由として最も嫌われます。
#好かれる理由なんてないでしょうけど。

ほんとに急を要するんであれば、金払ってMSに見てもらうのが一番確実です。
こういう掲示板では、回答者には急いで答える義務はありませんから、貴方が暇だろうが急いでいようが知ったこっちゃありません。
マルチに対して求めることはただ一つ。きっちりと後始末をすること。
引用返信 編集キー/
■143 / inTopicNo.7)  Re[4]: SQL Server 2005 CLR VB2005 DBアクセス方法
□投稿者/ はつね (48回)-(2007/01/17(Wed) 18:36:50)
はつね さんの Web サイト
No138 (ろーちゃん さん) に返信
> あと、SqlDataReader の値を吸い出して、ファイルに書き出すのですが
> Dim sw As New StreamWriter("C:\sql\Test.txt", False, System.Text.Encoding.GetEncoding("Shift_Jis"))
>
> で、セキュリティエラー(permissionがどうやらこうやら)が出て、
> どうしていいかわかりません。C:\sqlフォルダーのセキュリティをどうにかしないと
> いけないみたいですが、そこで行き詰ってます。

フォルダセキュリティではなくCLR側の設定だったと思います。
CLRからは通常はローカルな資源にアクセスする事はできないセキュリティになっています。そのあたり、MSDNで調べてみると判ると思います。

Windows Developers Magazineのちょっと前の号に書いたような気もしますが、いま手元に原稿がないので詳細は不明。
http://www.seshop.com/detail.asp?pid=7338

引用返信 編集キー/
■149 / inTopicNo.8)  Re[4]: SQL Server 2005 CLR VB2005 DBアクセス方法
□投稿者/ Jitta (212回)-(2007/01/17(Wed) 20:19:39)
Jitta さんの Web サイト
> 事は急を要するので、できるだけ大勢の人に見てもらうために、投稿しました。
 逆だね。
「あっちで聞いているんなら、別に良いよね」
「俺らを信用できないってか(怒)」

 急を要するなら、サポート契約を結べばいいのに。誰か優しくて、すごい人が、たまたま見てくれないと答えを得られないところより、よっぽど早く、親切丁寧に、解決してくれるだろうに。


はつねさんの、
> 全マルチポスト先の間での情報共有(他のポスト先で問題解決の情報が投稿されたり、何か質問を受けて回答した場合に、その他のポスト先に必ず投稿する)をお願いします。
を、よく考えましょう。

 少なくとも、どぼんさんところ、ここ、Insider.NET の3箇所に、同じ内容が記載されるようにしてください。
 14:13 に、どぼんさんのところに投稿した、「他のプロジェクトではうまくいく」という情報が、15:42 現在、他の2つにありません。
引用返信 編集キー/
■170 / inTopicNo.9)  Re[5]: SQL Server 2005 CLR VB2005 DBアクセス方法
□投稿者/ 特攻隊長まるるう (1回)-(2007/01/18(Thu) 10:57:20)
内容的にはDOBONさんのところが進んでて、ここがマルチの指摘を
一番受けてる?

>事は急を要するので、できるだけ大勢の人に見てもらうために、投稿しました。
>CLRにはやり方がさまざまあるようなので、スキルアップという点でも有効だと思います。
少なくとも2つの掲示板では何のフォローもない『マルチポスト禁止』です。
スキルアップ以前に、自分が掲示板を利用させてもらってるという立場だと
いうことをわきまえましょう。

ルールを守らない時点で掲示板を利用する資格がありません。

また、回答を投稿する人は同じジャンルのほとんどの掲示板で常連です。
回答としても同じ方向で進むことも多く、重複する内容も多くなります。
この場合、特定の掲示板のみで発言された内容を知らない回答者が
同じ内容を調査・確認したり、発言したり、せっかくの協力を無駄に
消費します。

マルチポストを禁止している意味として、回答者の協力を最大限に
生かすという意味があります。だからこそたとえマルチポストをしても、
情報共有が求められます。
あらゆる場面で、質問者の都合は問題になりません。
協力を得たいのなら、相手の都合を優先するなんて常識だと思います。

結果から書きますが、複数の掲示板でフォローすることは、まず
失敗します。
コピペして投稿するのが一番簡単ですが、発言の順番が
変わると意味が通じなくなるので、全ての掲示板をリアルタイムで
監視して、発言されたらすぐにフォローしなければいけません。
リンクを貼っただけでは特定の掲示板のみで発言された内容が
全ての回答者に伝わりません。

結果、解決まで取り組む掲示板を1つに絞ることになります。

>2chで匿名で投稿しても投稿内容でばれてしまうことがしばしば・・・
という事はマルチポストを過去何回も実行しているし、結果も
知ってるということですね?マルチポストの指摘自体が解決とは
何の関係もない内容です。解決を遅らせていると思いませんか?

解決を急ぐなら、多くの掲示板で投稿すれば早く解決すると
いう間違った考えを早く捨てることです。

引用返信 編集キー/
■172 / inTopicNo.10)  Re[6]: SQL Server 2005 CLR VB2005 DBアクセス方法
□投稿者/ 中博俊 (903回)-(2007/01/18(Thu) 11:09:22)
中博俊 さんの Web サイト
とりあえずマルチポスト云々に関する投稿をこのスレッドではこれ以上しないでください。
マルチポストの場合にはブリッジを張るだけにして、それ以上あーだこーだという指摘をすること自体実りのあるものではありませんので各位自重願います。
引用返信 編集キー/
■190 / inTopicNo.11)  Re[5]: SQL Server 2005 CLR VB2005 DBアクセス方法
□投稿者/ はつね (49回)-(2007/01/18(Thu) 16:08:29)
はつね さんの Web サイト
No143 (はつね さん) に返信
> ■No138 (ろーちゃん さん) に返信
> フォルダセキュリティではなくCLR側の設定だったと思います。
> CLRからは通常はローカルな資源にアクセスする事はできないセキュリティになっています。そのあたり、MSDNで調べてみると判ると思います。

(1) プロジェクトのプロパティでアクセス許可を「アンセーフ」
(2) 配置先のデータベースのTRUSTWORTHYをOn

ちなみにこの状態だとSQL Serverのインスタンスを落とす事も可能なので、本当にCLRからローカルディスクのテキストへ出力しないと実現できないものなのかをまずは考慮すべきでしょう。


引用返信 編集キー/
■196 / inTopicNo.12)  Re[7]: SQL Server 2005 CLR VB2005 DBアクセス方法
□投稿者/ Jitta (215回)-(2007/01/18(Thu) 22:03:40)
Jitta さんの Web サイト
まとめ:
 どうも、ConnectionString の設定方法がわかってなかったらしい。
………あ、これで終わっちゃう。。。

 んで、次に C:\sql\... にアクセスする必要があって、ここのファイルへのアクセスでセキュリティエラーが発生。
http://msdn2.microsoft.com/ja-jp/library/ms345101.aspx より:
> EXTERNAL_ACCESS アセンブリの権限は、 SAFE アセンブリの権限に、ファイル、ネットワーク、環境変数、レジストリなどの外部システム リソースにアクセスできる機能を加えたものです。

 逆に言うと、SAFE であれば、ファイルへアクセスできない、と。なので、この権限を与える、と。

引用返信 編集キー/
■205 / inTopicNo.13)  Re[8]: SQL Server 2005 CLR VB2005 DBアクセス方法
□投稿者/ はつね (50回)-(2007/01/19(Fri) 01:05:09)
はつね さんの Web サイト
No196 (Jitta さん) に返信
>>EXTERNAL_ACCESS アセンブリの権限は、 SAFE アセンブリの権限に、ファイル、ネットワーク、環境変数、レジストリなどの外部システム リソースにアクセスできる機能を加えたものです。

アンセーフまではいらなくて「外部」でいいのか。

引用返信 編集キー/
■212 / inTopicNo.14)  Re[9]: SQL Server 2005 CLR VB2005 DBアクセス方法
□投稿者/ (報告) (3回)-(2007/01/19(Fri) 09:46:17)
既にマルチポスト先で解決した模様です。
http://www.atmarkit.co.jp/bbs/phpBB/viewtopic.php?topic=36088&forum=26&start=8

後にフィードバックするとは言っているようですが、解決宣言を全ての場所でしていないので忘れられている可能性ありです。
ご報告までに。
引用返信 編集キー/
■220 / inTopicNo.15)  Re[10]: SQL Server 2005 CLR VB2005 DBアクセス方法
□投稿者/ じゃんぬねっと (335回)-(2007/01/19(Fri) 12:27:01)
じゃんぬねっと さんの Web サイト
No212 ((報告) さん) に返信
> 後にフィードバックするとは言っているようですが、解決宣言を全ての場所でしていないので忘れられている可能性ありです。
> ご報告までに。

ご報告ありがとうございます。
私も忘れ去られていやしないかと、解決先にフィードバックを促したのですが... ... . . . . . .
引用返信 編集キー/
■242 / inTopicNo.16)  Re[9]: SQL Server 2005 CLR VB2005 DBアクセス方法
□投稿者/ Jitta (217回)-(2007/01/19(Fri) 22:16:51)
Jitta さんの Web サイト
No205 (はつね さん) に返信
> ■No196 (Jitta さん) に返信
> >>EXTERNAL_ACCESS アセンブリの権限は、 SAFE アセンブリの権限に、ファイル、ネットワーク、環境変数、レジストリなどの外部システム リソースにアクセスできる機能を加えたものです。
>
> アンセーフまではいらなくて「外部」でいいのか。
>
 「わからないから Everyone Full Control」は、論外でしょう。
 SQL Server の認証に何を使っているか、どの様な経路で実行されたアセンブリにからアクセスしようとしているか、によっては、UNSAFE が必要。


……つか。「報告まだぁ?」の意

引用返信 編集キー/
■918 / inTopicNo.17)  Re[10]: SQL Server 2005 CLR VB2005 DBアクセス方法
□投稿者/ ろーちゃん (7回)-(2007/02/08(Thu) 08:42:00)
> ……つか。「報告まだぁ?」の意

では、簡単ではありますがレポートです。
■SQL CLR の作成方法
http://www.atmarkit.co.jp/fdb/rensai/sqls05try05/sqls05try05_1.html
■SQL CLRでの外部リソースへのアクセス方法
http://www.atmarkit.co.jp/fdb/rensai/sqls05try06/sqls05try06_2.html
・データベースの「TRUSTWORTHY」データベース・プロパティをONにする方法
ALTER DATABASE tablename SET TRUSTWORTHY ON
解決済み
引用返信 編集キー/
■938 / inTopicNo.18)  Re[11]: SQL Server 2005 CLR VB2005 DBアクセス方法
□投稿者/ Jitta (253回)-(2007/02/09(Fri) 19:06:03)
No918 (ろーちゃん さん) に返信
>>……つか。「報告まだぁ?」の意
>
> では、簡単ではありますがレポートです。
仕事では、こんなもの、報告書(レポート)として認められません。
あなたは認めているのですか?

原因と、それをした理由、調べたこと、解決策がわかるように、書き直してください。
これは、調べたことしか書かれていません。
引用返信 編集キー/
■1796 / inTopicNo.19)  Re[12]: SQL Server 2005 CLR VB2005 DBアクセス方法
□投稿者/ Jitta (284回)-(2007/03/06(Tue) 18:32:08)
スパムの標的にでもなっとるとですか?
引用返信 編集キー/
■1797 / inTopicNo.20)  Re[13]: SQL Server 2005 CLR VB2005 DBアクセス方法
 
□投稿者/ ぽぴ王子 (159回)-(2007/03/06(Tue) 19:02:49)
ぽぴ王子 さんの Web サイト
No1796 (Jitta さん) に返信

"SQL Server 2005 CLR VB2005 DB"

ってのが、たぶんガイジンちゃんにも読みやすいのと違いますか?
だから標的にされやすいんでしょうね。
特定のスレッドはもう書き込めなくしたり…できないかな。

# 立つ鳥跡を濁しまくり。
引用返信 編集キー/


トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

管理者用

- Child Tree -