c# – 转换不同数据库的SQL查询

前端之家收集整理的这篇文章主要介绍了c# – 转换不同数据库的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,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,"");
            sql = sql.Replace("AUTOINCREMENT","AUTOINCREMENT");

            break;
    }
    return (sql);
}

类似地,对于sqlite,使用||完成连接而在sql Server中则是使用完成的.

解决方法

SwisSQL Console 5.0

控制台提供即时解决方案,提供快速可靠的SQL查询转换实用程序,可加速迁移.控制台支持跨Oracle,sql Server,IBM DB2,MysqL,Sybase,Postgresql,Informix和Netezza数据库的迁移.该软件还具有测试目标数据库中转换的sql功能.

猜你在找的C#相关文章