2012-07-21 13 views
6

データベースのほとんどのクエリに「ポリゴン内」という要件が含まれているプロジェクトについては、これまで主に使用していたPostgreSQLをMySQLではなくPostgreSQLで選択することを考えました。主に、PostgreSQLにはより多くのGIS機能があるためです。しかし、私はこれをどのように評価するのかは不明であり、PHP開発者の視点との違いも実際には分かりません。PostgreSQLとPHP開発者向けMySQLの相違点

  1. PostgreSQLのサポートはMySQLと同様にPHPと同様に統合されていますか?
  2. PostgreSQLのクエリ(SQL)はMySQLとよく似ていますか?
  3. MySQLではなくPostgreSQLを選択する際に注意すべき点はありますか?
  4. GISデータを使用する場合、定義ごとのPostgreSQLはより良いソリューションですか?

あなたのお役に立っていただければ幸いです。

+0

はい、最初の2つの質問があります。 –

答えて

15

PostgreSQLのサポートはMySQLと同様にPHPと同様に統合されていますか?

はい。そして多分もっと良く、より多くのものをもっと簡単に作るためにPHP functionsが利用できます。

PostgreSQLのクエリ(SQL)はMySQLとよく似ていますか?

はい、それはSQLです。しかし、OracleやSQL Serverなど、より高度な機能を利用できます。

の代わりにPostgreSQLを選択する際に注意すべき点はありますか?

PostgreSQLは安価なホスティングプロバイダではまだ普及していません。しかしそれは利用可能です。

GISデータを使用する場合、定義ごとにPostgreSQLを使用する方がよいでしょうか?

MySQLは、GISクエリが必要なときにジョークで、PostGIS(PostgreSQLの関数とデータ型)は市場で入手可能な最高のGISデータベースの1つです。


編集: は、これら2つの比較をチェックしてください:

PostGISには、今後の9.2で、バージョン9.1にバージョン2.0とPostgreSQLへ移動しました。

MySQLにはわずかなGIS機能しかありませんが、パフォーマンスが欠けています.GISにとって重要な選択肢ではありません。

+1

フィードバックいただきありがとうございます! 「GISクエリが必要なときにMySQLが冗談です」ということを明確にしてください。 – preyz

+0

@preyz for GISには、MySQLに欠けている機能の大きなリストがあります。それは投影エンジンを持たず、[ポリゴンポイント解析ではなくバウンディングボックスを実行する]だけです(http://stackoverflow.com/questions/1078386/see-if-lat-long-falls-within- a-polygon-using-mysql)(MySQLを使用する場合を除いて)、MySQLにリンクするGISツールが少なくなります。PostGISは、MySQL Spatialが提供するものよりGISに関してはるかに成熟しています。 –

0

純粋にPHPの観点から、PDOを使用すると、コンストラクタを脇に置くと、あなたのコードはかなりデータベースに依存しなくなる可能性があります。

+1

しかし、あなたは特定のデータベースのすべての利点を失っています。パフォーマンスと機能が低下します。 –

+0

PDOは主なSQL構文を処理するための構造体を提供し、式に正しい引用符をエスケープして追加するのに役立ちます。特定の機能を使用することを否定するものではなく、本質的なSQLの機会のみを保持することは目的ではありません。重大なプロジェクトは普遍的なSQLに基づくことはできません。しかし、オープンソース製品(例えば、フレームワークの拡張機能)を開発する場合、プラットフォーム固有の機能を避ける必要があります。両方のアプローチで問題はありません。ところで、私はMySQL、Postgres、SQL Serverの間でいくつかの実際の移行を行いました。いくつかのスタートステージでは問題ありません。 –

関連する問題