是否有工具可以將一個數據庫的一個SQL查詢轉換爲另一個數據庫?將SQL查詢轉換爲其他數據庫
SQLite的
> CREATE TABLE ConstantValues( Id int
> AUTOINCREMENT primary key ,
> VariableName varchar(50) , Values
> varchar(150))
對於SQL Server
> CREATE TABLE ConstantValues( Id
> INTEGER identity(1,1) primary key ,
> VariableName varchar(50) , Values
> varchar(150))
同樣它是Oracle和SQL Server不同。同樣在外鍵約束聲明中,如果有一個工具可以讓我們從任何數據庫獲取SQL到任何數據庫,那對我來說真的很有幫助。
我創建了這樣的功能,但它似乎並沒有得到很好的解決:
private string changeSQL(string sql)
{
switch (dbtype)
{
case dbType.SQLite:
sql = sql.Replace(" int ", " INTEGER ");
sql = sql.Replace(" identity(1,1) ", " AUTOINCREMENT ");
break;
case dbType.MsAscess:
sql = sql.Replace(" int ", " ");
sql = sql.Replace(" identity(1,1) ", "");
sql = sql.Replace("AUTOINCREMENT", "AUTOINCREMENT");
break;
}
return (sql);
}
同樣SQLite的,拼接完成使用||
而在SQL Server它使用+
完成。
只是審查了被移植這樣從甲骨文到MSSQL一個第三方應用程序。他們編寫代碼來實現SEQUENCES。除了簡單的情況外,切換RDBMS還應該涉及數據庫的重新設計。 – Bill 2010-09-07 19:22:12
不要忘記標記答案如果你有你想要的信息.. – 2012-05-08 11:02:17