- PR -

ASP.NET + Oracle について

1
投稿者投稿内容
ゆうか
ベテラン
会議室デビュー日: 2004/04/01
投稿数: 62
投稿日時: 2005-05-03 12:45
現在、ASP.NETとOracleの組み合わせで製造を行っているのですが
どなたかアドバイスお願いします。

ASP.NET + Oracle ということで、データアクセスが早いと聞き
ODP.NETを使用してデータアクセスしようと考えました。
ところが、ODP.NETではDataAdaperでウィザードが使えない
ということが分かったので、.NETで標準のOracleProviderを
使うことにしました。
これで、DataAdaperでウィザードを使えると思ったのですが
テーブルの項目でカタカナを使用している場合、うまく認識
してくれません。.NET標準のOLEProviderでも認識してくれませんでした。

どなたか同様の現象で悩んだかたいませんか?
猫山みやお
大ベテラン
会議室デビュー日: 2004/09/09
投稿数: 119
投稿日時: 2005-05-03 13:56
ウィザードを使わなければいいのでは?
甕星
ぬし
会議室デビュー日: 2003/03/07
投稿数: 1185
お住まい・勤務地: 湖の見える丘の上
投稿日時: 2005-05-03 14:43
ODP.NETもその他のMicrosoft製データプロバイダもインターフェースには殆ど差が無いのだから、OracleDataProviderでテンプレートを作った後、変数の宣言を置き換えればよいじゃない。

ちなみにウィザードは慣れると直ぐに使わなくなると思います。設計の基本となるロジックとUIの分離を行うためには、ウィザードの生成したコードをそのまま使うわけには行きませんから。
Jitta
ぬし
会議室デビュー日: 2002/07/05
投稿数: 6267
お住まい・勤務地: 兵庫県・海手
投稿日時: 2005-05-04 07:19
 あっちこっちで頻出しているけど、テーブル名称にカタカナを使うのが間違っている。

 また、カタカナを使うなら、ダブルクォーテーションで囲まなければなりません。そうしなくてもできてる?たまたまできているだけ。



# まさか、Oracle7とか使ってないですよね?
_________________
Access
ぬし
会議室デビュー日: 2002/04/08
投稿数: 829
投稿日時: 2005-05-04 08:54
引用:

ところが、ODP.NETではDataAdaperでウィザードが使えない
ということが分かったので、.NETで標準のOracleProviderを
使うことにしました。


ウィザードを使用しなくても、とくに問題ないのでODP.NETを使いましょう。

コード:
Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) _
  Handles MyBase.Load
  DataGrid1.DataSource = CreateDataSet("CustomerPackage.GetCustomers")
  DataGrid1.DataBind()
End Sub

Private Function CreateDataSet(ByVal strPackage As String) As DataSet
  Dim con As New OracleConnection(ConfigurationSettings.AppSettings("conStringOraNw"))
  Dim cmd As New OracleCommand(strPackage, con)
  Dim da As New OracleDataAdapter
  Dim ds As New DataSet

  cmd.CommandType = CommandType.StoredProcedure
  cmd.Parameters.Add("1", OracleDbType.RefCursor, ParameterDirection.Output)
  da.SelectCommand = cmd
  da.Fill(ds)
  Return ds
End Function


_________________
ASP.NET+Ajaxサンプル集 | JavaScript+Ajaxサンプル集
Jitta
ぬし
会議室デビュー日: 2002/07/05
投稿数: 6267
お住まい・勤務地: 兵庫県・海手
投稿日時: 2005-05-04 16:27
 「なぜウィザードを使うか」というところを考えましょうよ(^-^;


 DELETE文、INSERT文、UPDATE文はウィザードで生成したものは使えません。ウィザードを使わなくてもSQL文が書けるようになること、つまり、SQL文の勉強をしておくことをお勧めします。
 または、人員に余裕があるなら、データベース周りを専門に扱う人を決めてみましょう。
_________________
1

スキルアップ/キャリアアップ(JOB@IT)