我目前正在尝试使用 Dapper Rainbow 作为我的 Firebird 数据库的包装器。
问题是它似乎正在为不同类型的数据库生成 SQL。
生成的 SQL 是:
select 1 from INFORMATION_SCHEMA.TABLES where TABLE_NAME = @name
这导致 Firebird 出现“动态 SQL 错误”,因为 Firebird 没有 INFORMATION_SCHEMA。
这是我的代码:
public class USERI{
public string ID { get; set;}
public string Name {get; set;}
}
public class DB : Database<DB> {
public Table<USERI> users { get; set; }
}
class Program {
static void Main(string[] args) {
string connString = String.Format(@"DataSource=localhost;Database={0};
User Id=SYSDBA;Password=masterkey", dbLocation);
var db = DB.Init(new FbConnection(connString), commandTimeout: 2);
var users = db.users.First();
}
}
我在我的数据库上使用了普通的 Dapper 查询,并且它是成功的。如何让 Rainbow 中的 DB 包装器知道 DB 类型?