問題タブ [sqlcedatareader]

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.

0 投票する
1 に答える
59 参照

.net - 一般的な方法でプロパティを渡しますか?

私は SqlCeDataReader を読んでいて、次のように値を評価しています:

そして、それを1つの関数に凝縮したかったのですが、最小限のコードで、理想的には次のようなものが欲しいです:

返すものが何もない場合は、NULL を返すようにします。それは可能ですか?

0 投票する
1 に答える
396 参照

c# - SqlCeDataReader while(read())が空白のデータセットで実行されている

SqlCeDataReaderを使用してクエリの結果を読み取り、0行または多数の行を返す可能性のあるオブジェクトのリストに追加しています。

私のコード:

Selectクエリは0行を返す必要があるため、Read()はfalseを返し、ループに入ることがないと想定します。(このテストインスタンスのテーブルに何があるかはわかっています。このテストで予想される動作は0行です。)

これを回避する方法はありますか?(.HasRowsを使用すると、例外もスローされます。)

もう1つ、このクエリで使用している接続は開いており、メソッドがこのwhileループに到達する前に、ここで実行されているもの以外の別のSqCeCommandで使用されていました。それが重要な場合...

0 投票する
1 に答える
5078 参照

c# - system.invalidoperationexception

このコードを実行しようとしています

例外発生 -

system.invalidoperationexception: このトランザクションのスコープ内に開いているカーソルがある場合、トランザクションをコミットできません。変更をコミットする前に、すべてのデータ リーダー/結果セットが明示的に閉じられていることを確認してください。

私はトランザクションが初めてで、開いているカーソルに関する価値のある解決策を見つけることができません。コードに何か問題がありますか、データ リーダーを明示的に閉じる必要がある場合は、その方法を教えてください。

0 投票する
1 に答える
1436 参照

c++ - DllGetClassObject は「そのようなインターフェイスはサポートされていません」を返しますが、CoCreateInstance は成功したと判断します

ライブラリ「sqlceoledb35.dll」を使用して、登録せずに.sdf dbファイルを処理したいと考えています。この dll が COM dll であり、ADO で使用されていることはわかっています。
しかし、ターゲット インターフェイスを取得できません。「そのようなインターフェイスはサポートされていません」というエラーが返されます。
コードは次のとおりです。

ただし、このコード スニペットで_uuidof(IUnknow)は、インターフェイスの成功を返すことができますが、IID_IDBInitialize失敗します (この IID は で機能しCoCreateInstanceます。後で説明します。

これは、同じインターフェイス IID を持つ同じマシンで正しく動作する別のコードです。

誰もが助けることができるので、最初のコードスニペットが機能するように?
では、メソッドCoCreateInstanceはキーとなるより多くの作業を行いましたか?

0 投票する
0 に答える
274 参照

visual-studio-2010 - Windows 8 上の SQL Server CE v4

SQL Server CE 4.0 を使用してアプリをビルドし、Windows 7.0 開発マシンでは問題なく動作しますが、Windows 8 (x64 バージョン、Lenovo All-In-One Horizo​​n 27' HW プラットフォーム) で実行すると、次のエラー メッセージが表示されます。

有効な Win 32 アプリケーションではありません (HRESULT からの例外: 0x800700C1)

アプリディレクトリで、私ははっきりと見ることができます

および他のすべての 7 つの DLL:

http://msdn.microsoft.com/en-us/library/vstudio/aa983326%28v=vs.110%29.aspxC:\Program Files\Microsoft SQL Server Compact Edition\v4.0の推奨に従って、ルート ディレクトリから取得し、アプリ ディレクトリに含めます。

その他の設定:

  • 構成プラットフォーム: 任意の CPU ターゲット プラットフォーム: x86 セットアップ
  • 対象プラットフォーム: x64

何がうまくいかなかったのか、それを修正する方法について何か考えはありますか? どうも。

0 投票する
1 に答える
1604 参照

c# - .Net EXE でネイティブ例外が発生しました

/からSQLサーバーCEデータベースへのデータを取得および更新するためのC#.net Windowsフォームアプリケーションを開発しました.Windows CE 6.0マシンでこのアプリを実行しているときに、次のエラーが発生しました:

それで、ネットで検索したところ、次のリンクが見つかりました。

http://go4answers.webhost4life.com/Example/cant-find-pinvoke-dll-sqlceme35dll-49162.aspx

http://blogs.msdn.com/b/sqlservercompact/archive/2007/10/26/can-t-find-p-invoke-dll-sqlcemenn-dll.aspx

示唆されたように、ZIP ファイルをコピーして (Cab ファイルを取得できなかったため)、これを .Cab に変更しました。次に、Cab を実行しようとしましたが、「これは有効な wince セットアップ ファイルではありません」と表示されました。

明確に説明していただければ幸いです。誰か助けていただけませんか?

0 投票する
1 に答える
346 参照

c# - SqlCeDataReader Read(); 何回か繰り返す

SQL Server Compact Edition を使用して、プログラムがどこかからローカル データベースにデータを挿入するアプリケーションをプログラミングしています。私のデータベース テーブルには次のような列があります: username, enterdate, exitdate... など。

現在、データの特別な行を読み取ってその行をリストビューに追加しようとしていますが、SqlCeDataReaderとそのRead();メソッドを使用すると、重複した項目がリストビューに追加されます。たとえば、必要な行がデータベースの9番目のインデックスにある場合、たとえば、目的の行がデータベースの9行目にあり、SELECTそれを使用してWHEREから読み取ると、同じ行に9つの重複アイテムが追加されますリストビューに必要なデータ。

Microsoft Visual Studio 2008 Express Edition を使用しています。

dbloggerリストビューに文字列を追加する void です

実際、私の問題はif{....}、データベース内の行数の数まで反復して反復することです

SELECTを使用してデータベースからデータを取得する場合WHERE、基準に一致するのは 1 行だけであると確信しているため、すべてを確認するには、問題はRead()手順にあることをお伝えしなければなりません。

SqlCeResultSetそして、この問題は、使用してから使用すると発生することを言及する必要がありますReadFirst();

答えを知っている人に特に感謝します。

0 投票する
1 に答える
280 参照

sql - 「記述された特性に一致するキーが現在の範囲内に見つかりませんでした」

SQL CE 4.0 と次のコードを使用しています。

しかし、エラーが発生し続けます:

「記述された特性に一致するキーが現在の範囲内に見つかりませんでした」

この行で:

この行をさまざまな異なるオプションに変更しようとしましたが、役に立ちませんでした。

私のsql ce dbには、次のように作成された2つのテーブルが含まれています(抜粋):

問題が何であるかについて困惑しています-エラーをグーグルで検索すると、私が行っていないレプリケーションの問題を参照しているようです。誰でも助けてもらえますか?

編集:

SQL Server Compact Toolbox v4.0 でクエリを実行しても問題はなく、正しいデータが返されます。

0 投票する
2 に答える
956 参照

c# - アップグレードせずに古いバージョンの SQL Server Compact データベースに接続する

VS2013 を使用して .sdf データベース ファイルに接続していますが、次のエラーが発生します。

データベース ファイルは、以前のバージョンの SQL Server Compact で作成されています。SqlCeEngine.Upgrade() メソッドを使用してアップグレードしてください。

これが私のコードです:

データベースをアップグレードしたくありません (実稼働データベースです)。データベースをアップグレードせずにデータベースから値を取得するにはどうすればよいですか?