• 締切済み

SQLserverの導入を検討中

これまでは、Access2007のテーブル(accdb)を共有PCに置いて、 クライアント側のAccess(accdb)で帳票を印刷していました。 保守の方法は、変更のあったオブジェクト(クエリ、レポート等)を 差し替え(削除→インポート)していました。 しかし、クライアントの数が増えてきたため、SQLserverの導入と Accessa(ccdb)のADP化を検討しています。 実際に使っていないのでわからないことばかりなので、質問させて頂きます。 Q1.SQLserverはサーバーでなくても共有PCでも問題はないでしょうか? Q2.保守の方法としては、サーバー側のクエリとクライアント側のレポート等を  差し替えるようなこれまでの方法でいいのでしょうか? 他に方法があれば教えてください。 Q3.現在の100個以上のクエリのうち半数以上は構成を変えるつもりですが、この場合 ウィザードでクエリをストアドプロシージャへ移行してから編集した方がよいか、 1つ1つデザインしなおした方がよいでしょうか? Q4.SQLserverの導入についての支援サイトなどあれば教えてください。 他にも聞きたい事がありますが、とりあえず回答いただきたいと思います。 よろしくお願いします。

みんなの回答

回答No.4

Q1 Windows Server ではなく、XP Vista 7 といったクライアント用 Windows で SQL Server を稼働させるのであれば、クライアント用 Windows の同時アクセス数の制限が心配ですね。 クライアント用 Windows はサーバー用 Windows と違って、外部から同時にアクセスできる数に制限が設けられています。(台数ではありません) それと、SQL Server を導入する場合、無償で使用できる Express Edition じゃない限り、CAL も考慮する必要があります。 箱で買う場合(最近のバージョンを箱で買ったことがないのですが) 5CAL が付属していると思うので、それ以上のクライアントからアクセスするならクライアント数ぶんの CAL を追加購入する必要があります。 まぁ CAL に関してはクライアント数やらユーザー数やら、何の数に対してライセンスを購入するのか選べますので、ご自分の職場の環境に応じて選べばよいと思います。 CAL を必要としない、プロセッサ ライセンスというのもあります。 http://www.microsoft.com/japan/sqlserver/2008/howtobuy/default.mspx Q3 すべてストアドにする必要ないでしょ。 パラメータ クエリならストアド化。 静的なクエリ(パラメータから動的に値を受け取って実行するのでない)ならクエリのまま(というかビュー) ひとまず無償の SQL Server Express Edition をダウンロードして手近な PC にインストールしてみてテストをしてみることが必要でしょうね。

meron_
質問者

補足

回答ありがとうございます。 今更ながら、色々と調べていると、データベースの接続方法に違いがある事に気づきました。 AccessADPではなく、accdb(mdb)からODBC経由で「リンク」する方法です。 こちらの方が早く移行できそうな気がしますが、 ODBCのメリット、デメリットは何でしょうか?

  • hallo-2007
  • ベストアンサー率41% (888/2115)
回答No.3

わかる部分だけですが >Q1.SQLserverはサーバーでなくても共有PCでも問題はないでしょうか? 大丈夫です。私自身、このパソコンに無料版をインストールして勉強しました。 >Q4.SQLserverの導入についての支援サイトなどあれば教えてください。 自習室でしょうね http://www.microsoft.com/japan/sqlserver/2008/self-learning/default.mspx のサイトの■SQL Server 2008 ささっと試せる SQL Server 超入門編 が、ほんと入門者が最初に読むところかと 無償版がありますので、ご自身のパソコンにインストールして試してみると早いです。 インストールだけでも、結構時間がかかった記憶があります。 インストールするときは http://www.microsoft.com/japan/msdn/vstudio/express/ にすべてがあります。 SQL Server 2008だけではなく(これだけでは何もわかりませんので)SQL Server Management (ついてくる)Visual Web Developerも一緒にインストールしてみてください。 ついでに Visual Basic 2010もインストールしてもよいかと。 Q2,Q3は何ともいえませんが アクセスやエクセルからもSQL Serverのテーブルに接続できるの 既存のアクセスで開発したクエリやレポートはそのまま生かしつつ SQL Serverに徐々に移行 していくことでよいかと。

  • ShowMeHow
  • ベストアンサー率28% (1424/5027)
回答No.2

トンチンカンな回答失礼しました。 ADPで作るなら、トリガーなどはサーバー側に作ったほうが良いですが、 それ以外のものは、すべてクライアント(サーバーに対する)側に作ってよいです。

  • ShowMeHow
  • ベストアンサー率28% (1424/5027)
回答No.1

全くの素人ですので、あまり参考にならないかもしれませんが、 A1 同時接続クライアント数によっては、稼動するでしょう。  安定稼動を考えると専用のPCを用意したほうが良いでしょう。 継続的な運用を考えるならサーバー機を用意したほうが安全です。 A2 「保守」の意味が良くわかりませんが、一番簡単な移行方法は、 データを移行し、クライアント上でリンクテーブルを使うことだと思います。 ただし、パフォーマンスの向上はあまり期待できないと思いますので、 この部分が不満なら、クライアント作業をサーバ側にやらせる必要がありますので、 クライアント側のプログラムを書き直す必要があります。 サーバーの性能も 良いものを入れる必要がでてきます。 A3 やったことがないので(Acc→SQL)、よくわかりませんが、  ストアドプロシージャーにしたいものは、そうすればよいのではないでしょうか? 何をしたいのかが良くわかりませんが、クライアント側からSQLを発行する仕組みを 作ることが必要な気がします。  

meron_
質問者

お礼

回答ありがとうございます。 現在の「保守」とは、開発環境は当方で、顧客側がクライアントとなります。 オブジェクト(クエリ、レポート、モジュール)の修正があった場合は クライアント側のPCのオブジェクトを入れ替える作業をいいます。 SQLserver+AccessADPに移行した後は、この保守の方法は どうしていくべきなのでしょうか? AccessADPのクエリ作成は、Accessと同じようなイメージでできますか?

関連するQ&A

  • クラスタ環境におけるSQLServerの導入に関して

    はじめまして。お世話になります。 AとBの2つのネットワークを持つクラスタ環境の サーバに対して、SQLServerを導入しました。 導入の際のウィザードにて、接続先のネットワークを聞かれたのでAのネットワークを指定して導入しました。 導入後、当然ながら、Aのネットワーク環境の端末からはSQLServerの接続(Enterprise Manager client 等で)は可能です。 そこで、現状に対して、BのネットワークからもSQLServerに接続を行いたく思っていますが、根本的に可能なのでしょうか? 可能であれば、設定方法を教えて頂きたく思います。

  • Sqlserver2000 5CaLについて

    パソコンサーバー 環境 OSWindowsXp    ソフトSqlserver2000 5Cl付き クライアント OS WINNDOWS 2000     ソフト Excel2000 上記の環境で、データベースをExcel2000を使って クライアントのパソコンからLANでサーバーにアクセスして、構築をしようと考えています。 その場合、サーバー側には当然Excelのソフトがいるのですよね。 Sqlserver2000 5Cl付とWinxpの動作保障はだいじょうぶでしょうか?Windows2000の方が間違いはないでしょうか? 以上よろしくお願いします。

  • Windows7よりSqlserver2000

    現在下記構成で、Microsoft Access2003 ソフトを稼働させていますが、クライアントの機器変更のために、新クライアント側からのODBC(Sqlserver)設定ができなくなり困っております。 Sqlserver初心者です。ご存じの方がいらっしゃいましたら、ご教授ください。よろしくお願いします。 <現機器構成> サーバー:Windows Server 2003 (Sqlserver2000) クライアント:Windows XP (ODBCドライバー バージョン:2000.85.1117.00) <新機器構成> クライアント:Windows 7  (ODBCドライバー バージョン:6.01.7600.16385) <現象> 新クライアント、『ODBCデータソースアドミニストレーター』より、システムDNSの設定をすると下記のエラーになります。設定内容は、XPのクライアントと同じにしています。ODBCのドライバーのバージョンが違うためでしょうか?それとも、根本的にWindows 7 よりSqlserver2000へのODBC接続は不可能なのでしょうか? <エラー内容> 接続できませんでした。 SQLState:’01000’ SQLServerエラー:1326 [Microsoft][ODBCServerDriver][NamedPipes]connectionOpen(Connect()) 接続できませんでした。 SQLState:’08001’ SQLServerエラー:17 [Microsoft][ODBCServerDriver][NamedPipes]SQLServerが存在しないか、 アクセスが拒否されました。 よろしくおねがいします。

  • SQLserverを分散環境で使う場合の必要ライセンス

    SQLserver2005とwinndowsserver2003でサーバーを構成し、1つのクライアント側からoffice2007のデータマイニングアドインでサーバー側のsqlserverに接続するということをやりたいと思っています。 この場合のライセンスは、sqlserverのcalを1個クライアント用に購入するだけで大丈夫でしょうか? また、設定方法で詳しいページなどありました教えていただけるとありがたいです。

  • SQLSERVERが見つかりません

    こんにちわ。Takaoと言います。 現在、SQLSERVER2000 スタンダートをWin2000SerVerにインストールして、もう一台同じネットワークのパソコン(Win2000Pro)に、クライアントツールをインストールしたのですが、クライアントツールのエンタープライズマネージャから、SQLSERVERが見つかりません。 SQLSERVERの新規登録もしてみたのですが、使用できるサーバーが一つもなく、コンピュータ名で指定しても、「存在しないか、アクセスが拒否されました」と表示されます。 環境は、一つのドメインの中にSQLSERVERのPCと、クライアントのPCがいます。認証モードは混合モードを選択しました。それ以外は一切操作していません。 何か設定しなければならない事や、心あたりがある方がいらっしゃいましたら、ぜひともアドバイスをお願い致します。

  • アクセスadpでのDLookUp関数

    アクセス2003 adpのレポートのあるコントロールのコントロールソースにDLookUp関数を使おうとしています。 =DLookUp("列名","ストアドプロシージャー名") *ストアドプロシージャーの抽出条件にパラメータを設定してあります レポートの「入力パラメータ」にも記入してあります *ストアドプロシージャーを実行した結果のレコードは1つのみです mdbでは =DLookUp("列名","クエリー名") でうまくいっていたのですが adpの場合#エラーになってしまいます 一時ファイルにレコードを追加してそれを引数にすればうまくいくのですが、 できればストアドプロシージャーを引数にしたいと思っています。 どなたかご教授をお願いいたします

  • AccessのデータをSQLServerで

    SQLServerについては知識がないので、基本的な質問かもしれませんがお願いします。 現在、社内のシステムはAccess2003で通しています。 中小企業なのでクライアント数も15(全クライアントにAccessをインストール済み)ほどで、データ量は全部のmdbファイルで2GB程度です。 ただAccessではスタンドアロンになりがちで、複数のクライアントからの同時アクセスによるデータ更新ができにくい状況です。これについては、本来はやりたくないのですがmdbファイルを複数に分散したりして逃げています。(できれば1つのmdbファイルが理想です) また、mdbファイルの大きさやクライアントのPCスペックにもよると思いますが、Accessでの操作性がよくない(重い)です。 このような状況から考えて、自社のWindowsServer2003にSQLServer2005を導入の予定でいます。 そこで一番聞きたい質問なのですが、 「Accessで構築したmdbファイルを、SQLServerにデータを移すのみで問題はないのでしょうか」 どこへ移すのかとか、それができたとして、クライアントは今後どこから自社のシステムへアクセスしたらよいのかはまだ知識がないためまったくわかりません。。 ただ、SQLServerについての基本的なことはおさえておくつもりです。 なお、SQLServer2005を導入するのならば、無償版(Express)があるそうなのでそれで様子を見て、いろいろ不足するようでしたら上位版を考えています。

  • sqlserver2008にODBC接続がNG

    初めてSQLSERVER2008を使用します。 現行Sqlserver2000を使用していて、接続するのにODBC(V2000.85.1132.00)を使用しています。このODBCでSqlserver2008に接続するODBCを作成しようとしていますが、sqlserverエラー17(sqlserverが存在しないかアクセスが拒否されました)というエラーが出てしまいます。 また、sqlserver native client10.0でもsqlserverエラー121で接続出来ません。 サーバー側に何か設定が必要なのでしょうか。 アドバイス何卒宜しくお願い致します。」

  • P2PでSQLServerの接続が解りません…。

    当方、データベース、ネットワークについて初心者です。 困っています。教えて下さい。 WindowsXPにてホストPCにSQLServer2008R2Expressをインストール。 P2P接続のクライアントPC2台(WindowsXP)。 クライアント側からSQLserverに接続出来ない。もしくはログインを作成出来ません。 ホスト側ではサーバーを立ち上げることが出来ました。 クライアント側に固定IPアドレスを設定してログイン名(196.168.*.*\<User名>)で作成。 エラー(15401)でUserが見つかりません。で作成出来ません。 もしくはアカウントの場所を検索しても、クライアントが見つかりません。 SQLserver認証でUser作成後、 クライアント側にManagementStudioをインストールしてサーバーにSQLServer認証を試みましたが エラー(18456)が出ました。 ちなみにクライアント側からホストPCのサーバー名が確認は出来ています。 ネットワーク設定に問題があるのでしょうか? それともアプリケーション側の設定なのでしょうか? どなたかどうぞよろしくお願いします。

  • accessからsqlserverへの移行について!

    accessからsqlserverへの移行について! 現在accessでシステム運用しています。 処理に時間がかかるのでDBのみsqlserverへの移行を検討しています。 時間がかかる原因は計算項目が多く計算の為に必要な定義項目と参照項目で計算項目を含めると約300項目となります。 この為、クエリーをNo.1とNo.2の2個のクエリーに分けて対処しています。 クエリーNo.2はNo.1の式の値を使用し更に式で計算しています。 クエリーで定義している計算式も条件が複雑なものもありさらに計算結果⇒計算結果⇒・・・・となっています。 この様な内容なので入力画面はレスポンスが遅く印刷は5~10分位かかるものがあります。 とりあえず印刷処理を早くしたいと思い一旦ワークテーブルに必要項目を出力する等をやって見ましたがやはり抽出に時間がかかりあまり改善しません。 データ件数は約3万件なのでデータ件数は問題ないと思っています。 accessの処理はそのままでDBをsqlserverからODBCでリンクしようと思います。 DBをsqlserverに移行することで処理速度の改善はどの程度見込めるのでしょうか。 計算項目数が多いのであまり見込めないのではと思っています。 accessからsqlserverへの移行された方でどの位改善されたのか教えて下さい。 現在の運用環境はサーバは使用せずファイル共有で4台のPCで運用しています。OSはWinXPです。 今回も専用サーバは使用せず現在のWinXPのPCにSQLServer2005無料を使用しようと思っています。 又、accessの処理で他に早くする方法がありましたら教えて下さい。 よろしくお願いします。