最近、MS SQL Server を MySQL に変換することに取り組んできました。その経験をまとめて共有します。同時に、これらは継続的に更新されます。また追加していただければ幸いです。 1 MySQL は enum 型と set 型をサポートしますが、SQL Server はサポートしません
2 MySQL は nchar、nvarchar、ntext 型をサポートしません
3 MySQL の increment ステートメントは AUTO_INCREMENT ですが、MS SQL はidentity(1,1)です
4 MS SQL テーブル作成ステートメントのデフォルト値は ((0)) で、MySQL では 2 つの括弧は使用できません
5 MySQL はテーブルのストレージ タイプを指定する必要があります
6 MS SQL 識別子は []、[type ]はキーワードとは違うという意味ですが、MySQLはボタン1の左側の記号である`です
7 MS SQLは現在の時刻と日付を取得するgetdate()メソッドをサポートしていますが、MySQLは日付に分割できますtypeとtime型で現在の時刻と日付を取得します。日付はcur_date()、現在の完了時刻はnow()関数です
8 MS SQLはreplace into文をサポートしていませんが、最新のsql20008ではmergeします。構文もサポートされています
9 MySQL は insert into table1 set t1 = '', t2 = '' をサポートしますが、MS SQL はこの方法の記述をサポートしません
10 MySQL は insert into tabl1 値 (1,1), ( 1,1), (1,1), (1,1), (1,1) , (1,1), (1,1)
11 MS SQL は、非常に残念なことに、limit ステートメントをサポートしていません。制限 0,N を置き換えるには top を使用し、制限 N,M を置き換えるには row_number() over() 関数のみを使用できます
12 MySQL はテーブルの作成時にテーブルごとにストレージ エンジン タイプを指定する必要がありますが、MS SQL のみです。サポートするストレージエンジンは 1 つです
13 MySQL はデフォルト値が現在時刻である datetime 型をサポートしていません (MS SQL は簡単です)、MySQL ではタイムスタンプ型が使用されます
14 MS SQL では、タイムスタンプ型が存在するかどうかを確認しますこのテーブルを削除する前に、次の操作を行う必要があります:
if names (select * from dbo.sysobjects where id = object_id(N'uc_newpm') and OBJECTPROPERTY(id, N'IsUserTable')=1) ただし、MySQL では、 DROP TABLE IF EXISTS cdb_forums; のみが必要です
しかし、MySQL では、DROP TABLE IF EXISTS cdb_forums; のみが必要です
15 MySQL は符号なし整数をサポートしているため、符号なし MS SQL をサポートすると最大ストレージ数が 2 倍になります
16 MySQL は、MS SQL で使用すると非常に便利な varchar(max) 型をサポートしていません。この型は、MS SQL での一般的なデータ ストレージに使用することもできます
17 非クラスター化を作成するには。 MySQL でインデックスを作成する場合は、テーブルの作成時にキーとして指定するだけで済みます。例: KEY displayorder (fid, displayorder) MS SQL では、次のようにする必要があります:
create unique nonclusteredindexindex_uc_protectedmembers_username_appid on dbo .uc_protectedmembers(username asc,appid asc )
18 MySQL テキストフィールドタイプはデフォルト値を許可しません
19 MySQL テーブルの合計フィールド長は 65XXX を超えません。
20非常に表面的な違いは、MySQLのインストールが非常に簡単で、ファイルサイズがわずか110M(非インストールバージョン)であることです。巨大なMicrosoftと比較すると、インストールの進行状況は単純です...
21MySQL管理ツールが含まれています。 MySQL_front や公式スイートなど、より優れたものはいくつかありますが、SSMS ほど使いやすくはありません。これは MySQL の大きな欠点です。
22MySQLのストアドプロシージャは最新バージョンにしか登場しておらず、安定性やパフォーマンスはMS SQLほど良くない可能性があります。
23 同じ負荷圧力の下では、MySQL は CPU とメモリの消費量が少なくなりますが、MS SQL は確かにリソースを非常に消費します。
24phpにはMySQLとMS SQLに同様の接続方法があります。MySQL関数をMS SQLに置き換えるだけです。
25MySQL は日付、時刻、年の型をサポートします。MS SQL は 2008 年の日付と時刻のみをサポートします。
上記は MS SQL Server と MySQL の違いです。その他の関連記事については、PHP 中国語 Web サイト (www.php.cn) に注目してください。