SQL CE 数据库中的行数和空间使用情况

发布于 2024-09-28 02:00:40 字数 123 浏览 1 评论 0原文

您好,我有两个 DB1.sdf 和 DB2.sdf 文件(sql ce)。我想比较一下两者。 我想检查每个数据库的行数和使用的空间。

有什么办法可以做到这一点吗?还有什么办法可以在两个数据库中进行相应的表对表比较?

Hi I have two DB1.sdf and DB2.sdf file (sql ce). I want to compare the two.
I want to check the no of rows and the space used in each of the database.

Is there any way to do that? Also is there any way to to a corresponding table to table comparision in the two databases?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

玉环 2024-10-05 02:00:40

您可以使用它来尝试获取行数:

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 数据比较工具

You can use this to try to get row count:

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;
 }

If that fails, you can use "SELECT COUNT(*) FROM table"

Space used is not available, but you can estimate based on this: http://support.microsoft.com/kb/827968

For data comparision, the best approach would probably be to migrate each sdf to a SQL Server Express database, and use a SQL Server Data Compare tool

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文