WindowsXPでSQL Server Compact Editionのデータベースにアクセスする方法

このQ&Aのポイント
  • WindowsXPのVisual Studio 2005のWindowsアプリケーションプロジェクトでSQL Server 2005 Compact Editionのデータベースにアクセスする方法を調査しています。
  • デバイスアプリケーションプロジェクトの場合は、System.Data.SqlServerCeを参照の追加で追加すればアクセスできることがわかっています。
  • WindowsXP上で新規の.SDFファイルを作成し、そのファイルに新規テーブルを作成し、CSVファイルのデータを.SDFファイルに登録したいと考えています。
回答を見る
  • ベストアンサー

WindowsXP で SQL Server Compact Edition

Visual Studio 2005 の Windowsアプリケーションプロジェクトにて SQL Server 2005 Compact Edition のデータベースにアクセスする方法 を調査しておりますが、実現できるかも含めてわかっておりません。 デバイスアプリケーションプロジェクトの場合は、 参照の追加でSystem.Data.SqlServerCeを追加すれば アクセスできる事はわかっております。 やりたいこと 1.WindowsXP上で***.SDFファイルを新規作成 2.作成した***.SDFに新規テーブルを作成 3.CSVファイルのデータを***.SDFへ登録 参考になるサイト・ヘルプ等ご存じの方がいらっしゃいましたら、 教えて頂けないでしょうか?宜しくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • nas02
  • ベストアンサー率70% (22/31)
回答No.2

見ている所はあっていると思います。 このエラーからすると言語はVBですね。 私はC#で製作しました。 多分、1~4で行なうDLLの参照設定が上手く出来てないからだと思います。 ここの説明を参考にして、試してみたら上手く動きました。(勿論VBで試しました) ※Tablet PC 用の参照設定は無視しました。 まだ、引っかかっているとすれば、参照設定しているDLLが間違っているのではないでしょうか? 因みに私は、デスクトップ用のランタイムをインストールしてないので 以下の場所を参照させました。 「C:\Program Files\Microsoft Visual Studio 8\Common7\IDE\System.Data.SqlServerCe.dll」 更に、実行時には以下のDLLを実行場所に置きました。 ・sqlcese30.dll ・sqlceme30.dll ・sqlceqp30.dll ・sqlceer30ja.dll 何れも「C:\Program Files\Microsoft Visual Studio 8\Common7\IDE\」以下にあります。 作成したSDFファイルは、サーバエクスプローラから接続して操作できます。 ※クラスライブラリの詳細はVS2005 MSDNライブラリの方を見る方がよいです。 .NETの開発  -.NET Freamework SDK ドキュメント   -クラス ライブラリ リファレンス    -System.Data.SqlServerCe 頑張ってください。

その他の回答 (1)

  • nas02
  • ベストアンサー率70% (22/31)
回答No.1

最近、やりたいことの1~3を仕事でやりました。 とりあえずヒントだけ 以下のサイトで、3つをダウンロードしてインストールしましょう。 http://www.microsoft.com/japan/sql/editions/compact/downloads.mspx ・SQL Server 2005 Compact Edition ランタイム エンジンのダウンロード (英語)→日本語版があります ・SQL Server 2005 Compact Edition Books Online ・SQL Server 2005 Compact Edition Tools for Visual Studio 2005 Service Pack 1 もう、既にやってるなら読み捨ててください。 後は、「SQL Server 2005 Compact Edition Books Online」を読めば分るはずです。 注意としては、モバイル用とデスクトップ用のランタイムは違いますので 「System.Data.SqlServerCe」を参照するときはデスクトップ用の方を参照するようにしましょう。 頑張ってください。

order4649
質問者

補足

nas02 さま、早速のご回答どうもありがとうございます。 すみません、Books Online の存在は知っており、 事前に一通り読んでいたのですが、具体的な方法がわからなかった為、今回質問させてもらう事となりました。 ご回答をいただき、読み飛ばしている箇所がある思い、もう一度目を通してみたところ、該当すると思われる箇所を見つけました。 SQL Server 2005 Compact Edition Books Online →SQL Server Compact Edition プログラミング  →アプリケーションの構築と配置(SQL Server Compact Edition)   →SQL Server Compact Edition アプリケーションの構築    →Tablet PC 用 SQL Server Compact Edition アプリケーションの構築 章のタイトルが Tablet PC という事で読み飛ばしておりましたが、 WindowsアプリケーションプロジェクトでのSQL Server Compact Editionの構築方法が記載されていました。 この手順で合っておりますでしょうか? 実は、昨日この手順で実施してみたところ、 『プロジェクトへの SQL Server Compact Edition の追加』 の項番6のところでビルドエラーとなってしまいました。 ビルドエラー内容 『インポート 'System.Data.SqlServerCe' で指定された名前空間または型が、パブリック メンバを含んでいないか、または見つかりません。名前空間または型が定義されていて、すくなくとも1つのパブリック メンバを含んでいることを確認してください。また、インポートされた要素名がエイリアスを使用していないことを確認してください。』 恐れ入りますが、もう少しヒントをいただけると助かります。 以上、宜しくお願いします。

関連するQ&A

  • SQL Server2005 Compact Editionへの動作確認

    ハンディ端末にSQL Server2005 Compact Editionを入れて単純に動くかどうかを確認したいと考えています。 PC上ではSQL Server2005 Compact EditionをSSMSEより接続し、テープルをCREATE、SELECTする事が出来ました。 ハンディ端末ではSSMSEを使用することが出来ないのでクエリアナライザで使用する事を考えたのですがクエリアナライザをインストールするのにVisual Studio2005が必要であることが判明しました。(Visual Studioは持っていません) 未だ、ハンディ端末にSQL Server2005 Compact Editionをインストールしたわけでは有りませんが、インストールし、PC上で作成した.sdfをコピー後、テーブルを参照できるかどうか、確認する方法は無いでしょうか? 宜しくお願いします。

  • SQL Server 2005 Compact Editionのプログラミング(初心者)

    現在PDA(スマートフォン)によるアプリケーション開発に携わっています。PDAを用いて不特定多数に対し街頭調査をし、膨大ととなった情報をうまくまとめられたらと思い、Visual Studio 2005でソフトウェアを構築しています。しかし、プログラミングは初心者なので進行は遅いです。データを格納するデータベースとしてSQL Server 2005 Compact Editionの存在を知り、今はその勉強中です。しかし、なかなか良い参考書が見つかりません。MSDNのホームページを探していますが、うまく見つけられませんでした。 SQL Server 2005 Compact Editionを利用したPDAのプログラミングについて何か知っている方がいらっしゃいましたら、教えていただけると幸いです。

  • SQL Server Compactはどこへ!?

    ビジュアルスタジオで前に作ったSQL Server Compactを組み込んであるアプリケーションをバージョンアップしようとしたら、2013ではサポートから外されていました。 なぜ外されてしまったのでしょうか? ビジュアルスタジオでサポートされている代替機能にはなにがありますか?

  • SQLサーバー2005とVisual Studio 2008 Expr

    SQLサーバー2005とVisual Studio 2008 Express Edition を使用して、データベースにアクセスしたいのですが、Visual Studioで新しい項目の追加→「サービス ベースのデータ アクセス用の空の SQL Server データベース」→追加として、Database1.mdfを新規作成しようとすると、以下のエラーが出てしまいます。 エラー:ファイルまたはアセンブリ 'Microsoft.SqlServer.Management.Sdk.Sfc, Version=10.0.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91'、またはその依存関係の 1 つが読み込めませんでした。指定されたファイルが見つかりません。 解決方法が分からなくて困っております。ご存知の方、お手数ですがご指導いただけないでしょうか。 よろしくお願い致します。 <環境> Os: Win Xp SQLサーバー2005 Visual Studio 2008 Express Edition

  • Compact 3.5とVS2012

    SQL Server Compact 3.5 SP2について教えてください。 現在、SQL Server 2008R2で運用されているWebアプリケーションシステムがあります。 ASP.NETで作られており、データアクセスはLINQ for SQLで動作しています。 今回、ちょっとしたサーバ移転があり、データアクセスの頻度がさほど高くない理由から、SQL Server Compact 3.5での稼働を計画しています。 (Compact 4.0だとLINQが動作しないらしいので) で、開発環境(VS2012)にてSQL CE3.5のファイルを作ろうとしたところ、サーバエクスプローラのプロバイダ選択画面で、CE3.5も4も出てきません。 (通常のSQL Serverや、mdf形式のSQL Serverプロバイダは正しく出てきます) そこで質問なのですが、 ・SQL Server CE3.5はVisual Studio 2012に対応しているのでしょうか? ・皆さんのVisual Studio 2012では、SQL Server CEをデータプロバイダとして、サーバエクスプローラを動作させることができますか? よろしくお願いします。

  • VB.NET SQL SERVER COMPACT EDITION

    VB.NETにてWindowsMobile5.0の開発をしております。 SQL SERVER COMPACT EDITIONを使ってデータベースの開発に取り掛かっておりますが経験が全くなく非常に手こずってます。 ユーザーが自由に名前や値を変更できる仕様なので挿入するデータを可変的に設定したい場合どうすれば良いのですか。 下記のZ1,A1,0.001等を変数にして可変にしたいです。 ' データを挿入します。 sql = "INSERT INTO Zahyou " & _ "(RECNO,TNAME,X,Y,Z,R,I,A1,A2) VALUES " & _ "('Z1','A1','1.000','2.000','3.000','4.000','5.000','6.000','7.000')" 年末までに仕上げなければならず非常に困ってます。 どうかお助けて下さい。

  • SQL Serverのデータ格納場所

    SQL Serverのデータ格納場所 Visual Studioを勉強しだしました。データベースのところで、mdfファイル、ndfファイルという言葉が出てきました。 ネットで色々調べていますが、いまいちわからないのでお教えください。 参考にしたURL: http://itpro.nikkeibp.co.jp/article/COLUMN/20070201/260338/ ■mdfファイルとはSQL Server Express Editionのデータベースデータファイルとあります。 Express Editionではない、SQL Server 2012 Standardなどのデータベースは違う拡張子のデータベースファイルになるのでしょうか? もしそうなら、何故Express Edtionと有料バージョンではデータの持ち方が違うのでしょうか? ■mdfファイルを違うパソコンで開きたいとします。Accessみたいに、ファイルをコピーして別PCに持って行けばファイルはひらけるものなのでしょうか? ■mdfファイルのデータをAccessにインポートできるのもなのでしょうか? 当方、Accessがわかる程度で、その他のデータベース関連のソフトウェアはさわったこともありません・・・ 宜しくお願い致します。

  • C++2012データベースファイルを自動生成しない

    前略 ・VC++ 2012 でフォームアプリケーションをビルトすると、ファイルサイズが大変大きなローカルデータベースファイル(SQL Server Compact Edition Databese file、拡張子sdf)が自動されてきてしまいます。 VC++2012のプロジェクトファイルを保存しているフォルダのサイズが大きくなってきて困っています。 データベースアプリケーションをつくることはないので ローカルデータベースファイルが自動生成されないようにする方法を どなたか教えてください。 また、*.sdfファイルは削除しても データベースアプリケーションでない私の場合 特に支障なく動作しているようなのですが、 エクスプローラで削除した場合なにか支障がでることがあるのでしょうか教えていただければ幸いです。 以上

  • Compact Edition でテーブルの存在チェック

    Visual Studio 2005 (VB) から、 SQL Server 2005 Compact Edition に対し、 テーブルの存在チェックを行いたいのですが、 SQL文の書き方がわかりません。 Compact Edition 以外のSQL Server でしたら、 以下のような SQL でチェックできる事は知っております。 IF object_id('Northwind..Orders', 'U') IS NOT NULL PRINT N'存在します' ELSE PRINT N'存在しません' 例外にて判断する方法は、最後の手段と考えております。 ご存じの方、どうぞ宜しくお願いします。

  • VB2008 SQL Server2005 連携

    Win Xp HEで VB2008 Express Edition と Sql Server 2005 EDで データベース プログラムの練習をしています。  vb2008で新しいプロジェクトを作成し プロジェクト メニュから ローカルデータベースを選択すると「ローカル データファイルの 接続に 必要な データ プロバイダが見つかりません。 ファイルはプロジェクトに追加されますが ファイルに関連付けられた データ セットは 生成されません。」という メッセージがでます。 本来なら ここで データソース構成ウィザードが表示され空の データセットが作成されるはずなのですが 空のデータセットが できないまま終了してしまいます。 どなたか 対処法が わかる方 教えてください。 VB2008EDも SQL SERVER 2008も正常に インストールされて いると思います。設定の 問題だと おもうのですが・・・・