問題タブ [dataadapter]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
vb.net - VB.NET で部分クラスを使用してプライベート フィールドを公開するにはどうすればよいですか?
これはスタック オーバーフローに関する私の最初の投稿ですので、n00b の誤りを許してください (また、遠慮なく指摘してください)。
次の例で説明するように、部分クラスを拡張することにより、VB.NET (Visual Studio 2010 を使用) で複数の TableAdapter にトランザクションを実装しようとしています。
http://blah.winsmarts.com/2006/06/18/the-definitive-tableadapters--transactions-blog-post.aspx
madprops.org/blog/typed-datasets-and-sqltransaction/
stackoverflow.com/questions/2342289/net-tableadapter-to-dataadapter
ただし、デザイナーによって作成されたプライベート フィールドを公開しようとすると、エディターで下線が引かれ、次のエラーが表示されます。
「_adapter」が宣言されていません。保護レベルにより、アクセスできない場合があります。
このサイトとグーグルを検索しても、役立つものは何も見つかりませんでしたが、間違ったキーワードを検索しているようです。
MyDataset.vb のコードは次のとおりです。
デザイナーコードは次のとおりです。
何か不足していますか、またはこれは VB では不可能ですか (私が見た例はすべて C# にあります)。
どんな助けでもTIA!
日
c# - OracleNumberを一般的にフォーマットする方法
DataGrid(WinForms)に表示されるデータセットを入力するために、OracleDataAdapterを備えたCSVエクスポート機能を備えたOracle用の小さなクエリツールを作成しました。最初は.NETタイプ(DateTime、decimal、string、...)を使用しましたが、Oracle()の精度が高いために、オーバーフロー例外が発生する場合がありましたNUMBER(30,10)
。したがって、OracleDataAdapterでプロパティを設定する必要があったReturnProviderSpecificTypes = true
ため、代わりにOracleClient(OracleNumber、OracleBoolean、OracleString、...)タイプを使用するようになりました。
問題は、私がnl-BE領域にいる間(画面上およびCSV出力中に)すべてが常にen-US形式にローカライズされることです(小数点記号としてコンマを使用し、千単位の区切り文字としてポイントを使用します)。CSVの列区切り文字はセミコロンです。したがって、10進数のコンマとの干渉はありません。
では、これらのタイプの方法でToStringメソッドをオーバーライドする方法はありますか?ある種のフォーマットエンジンを注入しますか?
ありがとう
c# - ADO.NET DataAdapter
いくつかの行を削除した後、dataAdapterでupdateメソッドを呼び出すと、次のエラーが発生します。
DELETEステートメントがREFERENCE制約「FK_Eleve_Classe」と競合していました。データベース「hogwarts」、テーブル「dbo.Eleve」、列「FK_classID」で競合が発生しました。ステートメントは終了されました。
確かに、外部キーが定義されていますが、主キーは「classe」テーブルにあるので、なぜ「eleve」の行を削除できないのですか?
多分それはカスケードで削除しようとしますか?(それでは、これを変更する方法は?)
編集1:SQL
編集2:いくつかのc#コード
編集3:削除
これが私のテーブルの要素を削除する方法です:
これに加えて、deleteCommandを手動で設定する必要がありますか?
はい、面白い方法で説明するサンプルを作成しているので、ホグワーツ魔法魔術学校です;)
ありがとう、
凧
c# - DataAdapter を使用して行を削除する
dataAdapter を初期化しました:
そして、これはうまく機能します。問題は、レコードを削除してデータベースを更新しようとしたときです。私はそのようにデータセットからレコードを削除します:
そして、これも問題なく動作します(検証済み)。
問題は、DataAdapter を更新するときに、DataBase が変更されないことです。
何が問題なのですか?
c# - 同時実行違反:UpdateCommandは、予想される1レコードのうち0レコードに影響を与えました。DBconcurrencyExceptionは処理されませんでした
2つのデータセットと2つのdataAdapters(各データセットに1つ)を定義しました。作成後、2つのdataAdapterのそれぞれについて、SqlCommandBuilderを定義します。ここまではすべて順調です。dataAdapter1.Update(dataSet1)を使用して、データベースから非常に大丈夫な追加、変更、消去を行うことができます。ただし、この順序ではありません:erase、add、modify。
最初のデータセット、dataAdapterおよびsqlCommandBuilderのコードは次のとおりです。
そして2番目:
なぜこれが起こっているのか、何か考えはありますか?
.net - OracleDataApdaterを使用して、単一行のトリガーによって行われた変更を検出するにはどうすればよいですか。
OracleDataAdapterとdatatableを使用して1行のデータを更新しています。apdapterの.updateメソッドの呼び出しは正常に機能しますが、データベーストリガーは、更新後にフィールド値の1つを更新します。これにより、データテーブルがデータベースと同期していないという問題が発生します。
考えられる解決策各更新ステートメントの後にデータを再クエリするか、oracle依存関係の起動を使用できますが、DataTable自体を変更された値に更新するのが最善の方法だと思いますが、これを行うにはどうすればよいですか?updateステートメントにoracleコマンドビルダーを使用して、各パラメーターを入出力に変更しようとしましたが、これは機能しませんでした。RowUpdatedのイベントにフックしようとしましたが、そこで何を確認するかがわかりません。
助言がありますか?
c# - 複数のテーブルを持つC#DataAdapterおよびDataSet
DataAdapterを使用して、DataSetを複数のテーブルで埋めることができることを多くの場所から読みました。また、1回のUpdate呼び出しでDataSet内のすべてのテーブルを更新できるかどうかも示されません。
誰かがこれをどのように行うことができるかを理解するのを手伝ってもらえますか?
2回目の入力の前にDataAdapterのSelectCommandを変更する例を除いて、それを行う方法の例はないようです(オンラインで見つけてみました)。しかし、この方法はDataAdapterの目的を損なうと思います。
私の考えでは、おそらく1つのDataAdapterは1つのデータベーステーブルしか処理できず、Updateはそのテーブルでのみ機能します。したがって、マルチテーブルDataSetでは、DataAdapterがDataSetを完全に更新するためにUpdateを呼び出す必要があります。これは本当ですか?
最後に、外部キーの関係と制約は、DataSet(カスケード削除、カスケード更新)に自動的に保持されますか?
たぶん、例やチュートリアルへのリンクが役立つかもしれません。どうもありがとう!
c# - ADO.NET-DataReadエラー
データベースの列のデータをリッチテキストボックスに表示しようとしていますが、DataSetとDataReaderが混同されています-以下のコードの大部分が正しいことはわかっています。エラーを含む2行が表示されます。 m理由がわからない:
sql-server - 新しい行を挿入すると、データセットの更新に失敗します
DataAdapter1.Update()メソッドを介してデータセットdsStaff1に新しい行を挿入しています。次のエラーが発生します。
列'Enabled'、テーブル'dbo.tblStaff'に値NULLを挿入できません。列はnullを許可しません。INSERTは失敗します。ステートメントは終了されました。
tblStaffにブールフィールド「Enabled」があります。これは、SQLServerのキーワードだと思います。デフォルトは「True」です。フィールドの名前を実際に変更することはできません。回避策はありますか?または私は何か間違ったことをしていますか?PS:sqlcommandビルダーによって挿入、更新コマンドを生成しています。
c# - アダプター c# の「Like」クエリ
データ セットから作成されたデータ アダプターがあります。このクエリを実行したい:
Select Body
WHERE Body Like '%@INPUTTEXT%'
.
どうすればできますか?「@INPUTTEXT」をパラメーターにしたいのですが、「'」のために単純なテキストです...