您好我有两个DB1.sdf和DB2.sdf文件(sql ce)。我想比较两者。 我想检查每个数据库中使用的行数和空间数。
有没有办法做到这一点?还有什么方法可以在两个数据库中对应表进行表比较吗?
答案 0 :(得分:1)
您可以使用它来尝试获取行数:
public Int64 GetRowCount(string tableName)
{
object value = ExecuteScalar("SELECT CARDINALITY FROM INFORMATION_SCHEMA.INDEXES WHERE PRIMARY_KEY = 1 AND TABLE_NAME = N'" + tableName + "'");
if (value != null)
{
return (Int64)value;
}
return -1;
}
如果失败,您可以使用“SELECT COUNT(*)FROM table”
使用的空间不可用,但您可以根据此进行估算:http://support.microsoft.com/kb/827968
对于数据比较,最好的方法可能是将每个sdf迁移到SQL Server Express数据库,并使用SQL Server数据比较工具