質問 > その他 > SQLServer2008対応 |
その他
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | 下へ |
投稿者 | スレッド |
---|---|
p8jun |
投稿日時: 2012/2/16 15:48
対応状況: −−−
|
新米 登録日: 2011/6/20 居住地: 投稿: 5 |
SQLServer2008対応 お世話になります。
今回、IIS7+SQLServer2008 という環境でECCUBEを構築することになりました。 MySQLを相手にしてインストール。フロント、管理機能を表示できることを確認いたしました。 また、別途PHPからSQLServer2008にアクセスしデータを取り出すテストも完了いたしました。 とりあえずdata/config/config.phpの接続先を変更し、正しく(?)エラーの出るところまで。 (「DB_TYPE」は仮に"mssql"といたしました) さて、これからSQL文を生成しているあたりから攻めないといけないのですが、どのような手順が一番いいでしょうか。 手引きみたいなものがあればお教え頂きたいのですが。 どうぞよろしくお願いいたします。 |
nanasess |
投稿日時: 2012/2/16 16:07
対応状況: −−−
|
神 登録日: 2006/9/9 居住地: 投稿: 2313 |
Re: SQLServer2008対応 デフォルトの EC-CUBE の SQL は, SQLServer とはほとんど別物なので, かなり苦労すると思います.
以下で公開されているソースは, Windows Azure 用のものですが, SQL は SQLServer と互換性がありますので, デフォルトの状態からカスタマイズするよりも格段に楽だと思います. http://eccubeonwaz.codeplex.com/ まだβ版ですので, 不具合が残っているかもしれませんので, ご利用は自己責任で. デフォルトの 2.11.3 と差分を確認すると良いと思います. |
seasoft |
投稿日時: 2012/2/16 16:35
対応状況: −−−
|
神 登録日: 2008/6/4 居住地: 投稿: 7367 |
Re: SQLServer2008対応 MS-SQL とは逆行する方向ですが、実験的に SQLite2 で動作させた事があります。
トライアル・アンド・エラーで、エラーに遭遇したら、同様のパターン (SQL構文の違い) を grep で探して直すといった感じでした。 「EXISTS → IN」の書き換えとか。 一部は、SC_DB_DBFactory で正規表現で変換するようにした部分も有りました。 「CURRENT_DATE → datetime」とか。 ちなみに、DB_TYPE は、新たに定義せず、既存のものを使い回して、DSN だけ固定的に書いていました。(p8jun 様の方針の方が美しいと思います。) nanasess 様が提示されている、SQL Azure 用の実装は相当に参考になりそうですね。
|
nanasess |
投稿日時: 2012/2/17 18:13
対応状況: −−−
|
神 登録日: 2006/9/9 居住地: 投稿: 2313 |
Re: SQLServer2008対応 オフトピですが, Windows Azure 版では DSN は使用せず, MDB2に接続情報を渡す際には連想配列を使用しています.
MDB2 から DSNは推奨されていないので, 本家の方も連想配列にしたいですね〜 |
seasoft |
投稿日時: 2012/2/17 22:43
対応状況: −−−
|
神 登録日: 2008/6/4 居住地: 投稿: 7367 |
Re: SQLServer2008対応 > MDB2 から DSNは推奨されていないので, 本家の方も連想配列にしたいですね〜
それ賛成です。 SQLite のとき、DB ファイルパスに「Program Files (x86)」とか含んでいて、括弧が DSN 構文と解釈されて大変でした。エスケープもできないようで、結局 MDB2 をカスタマイズする羽目に・・・
|
p8jun |
投稿日時: 2012/2/20 10:02
対応状況: −−−
|
新米 登録日: 2011/6/20 居住地: 投稿: 5 |
Re: SQLServer2008対応 みなさま
ありがとうございます。 なかなか大変そうだということが分かってきました。 AZURE版もダウンロードして中を見てみました。 商品数が2万点を超えるということと、IIS+SQLServerをプラットフォームにして開発していますので、簡単にその環境に乗せ替えられるならその方が・・・という選択でした。 ですがECCUBEの解析から始めないといけない状況と納品がタイトなことから方向性の決断に迫られています。 ほんと、遅ればせながらMDB2というものでDB接続しているのですね。素のADOではなかったので、これをカスタマイズとなるとお手上げです。 今はMDB2でmssqlを使えるようにしようとパッケージをダウンロードしてインストールを試みるものの入ってくれません。 しかもWindows版PHPではv5.3以上になると中で使っているdllが使えなくなるとか。 やはりPostgreSQLを相手にしてLinux環境で構築がいいのでしょうか。IIS+SQLServerの事例があまりありませんね・・。 |
nanasess |
投稿日時: 2012/2/20 10:41
対応状況: −−−
|
神 登録日: 2006/9/9 居住地: 投稿: 2313 |
Re: SQLServer2008対応 引用:
mssql も PHP5.3 で対応しているはずなのですが, 手元の環境では認識してくれず, sqlsrv を使用していました. Azure 版のパッケージも sqlsrv を使用しているので, 参考になるかと. 納品がタイトということで, IIS+SQLServer の対応は, かなりハードル高いですね... 当方ある程度ノウハウありますので, http://xoops.ec-cube.net/userinfo.php?uid=16 のメールアドレス宛にでもご連絡いただければ, 多少のご助力はできるかなと思います |
p8jun |
投稿日時: 2012/2/22 9:41
対応状況: −−−
|
新米 登録日: 2011/6/20 居住地: 投稿: 5 |
Re: SQLServer2008対応 みなさま
お世話になっております。 当方でも話し合った結果、今回はPostgreSQLで実装することなりました。 本来は弊社の強い環境で実装したかったところですが、何せタイトなスケジュールですのでこのような選択とさせて頂きました。 今後、またIIS+SQLServerでの実装を考えると思います。 そのときは是非お力をおかしくださいませ。 ありがとうございました。 |
seasoft |
投稿日時: 2012/3/16 20:31
対応状況: −−−
|
神 登録日: 2008/6/4 居住地: 投稿: 7367 |
Re: SQLServer2008対応 > MDB2 から DSNは推奨されていないので, 本家の方も連想配列にしたいですね〜
別件の不具合改修の際、文字列型のDSNの扱いが悪かったため、インストーラは、配列型に置換しました。 http://svn.ec-cube.net/open_trac/changeset/21651 本体ソースでやる場合は、定数 DEFAULT_DSN の扱いが少々悩みどころになりそうですね。まぁ、利用箇所は案外少なそうなので、何とかできそうな感じですね。
|
スレッド表示 | 新しいものから | 前のトピック | 次のトピック | トップ |