--生成表

IF  EXISTS ( SELECT  name
                FROM    sysobjects
                WHERE   xtype = 'u' )
    BEGIN
        DROP TABLE TableRowCount
    END
go
   CREATE TABLE TableRowCount
            (
              ID INT IDENTITY(1, 1) ,
              TableName VARCHAR(500) ,
              ColumnsCount INT DEFAULT ( 0 )
            )
DECLARE @TableName VARCHAR(50) ,
    @sql VARCHAR(MAX)= ''

DECLARE My_Cursor CURSOR
FOR
    ( SELECT    name
      FROM      sysobjects
      WHERE     xtype = 'u'
    )  
OPEN My_Cursor;
FETCH NEXT FROM My_Cursor INTO @TableName;  
WHILE @@FETCH_STATUS = 0
    BEGIN
        SET @sql = 'INSERT INTO TableRowCount  ( TableName, ColumnsCount ) SELECT '''
            + @TableName
            + '''  AS TableName ,COUNT(1) AS ColumnsCount FROM dbo.'
            + @TableName + ';'
        EXEC (@sql)
        FETCH NEXT FROM My_Cursor INTO @TableName;
    END
CLOSE My_Cursor;
DEALLOCATE My_Cursor;
--PRINT @sql

--EXEC (@sql)

SELECT  * FROM    TableRowCount WHERE ColumnsCount > 0 ORDER BY ColumnsCount DESC

--查主键

SELECT  b.name AS '表名' ,
            CASE WHEN c.NAME IS NULL THEN '无'
                 ELSE '有'
            END AS '主键'
    FROM    sysobjects b
            LEFT JOIN ( ( SELECT    OBJECT_NAME(a.parent_obj) AS name
                          FROM      sysobjects a
                          WHERE     xtype = 'PK'
                        ) ) c ON b.NAME = c.name
    WHERE   b.xtype = 'U'
    ORDER BY c.NAME DESC

SQL SERVER中查询无主键的SQL的更多相关文章

  1. Sql Server中查询今天、昨天、本周、上周、本月、上月数据

    Sql Server中查询今天.昨天.本周.上周.本月.上月数据 在做Sql Server开发的时候有时需要获取表中今天.昨天.本周.上周.本月.上月等数据,这时候就需要使用DATEDIFF()函数及 ...

  2. SQL Server中查询用户的对象权限和角色的方法

    --SQL Server中查询用户的对象权限和角色的方法 -- 查询用户的object权限 exec sp_helprotect NULL, 'sa' -- 查询用户拥有的role exec sp_h ...

  3. SQL Server中查询CPU占用高的SQL语句

    SQL Server中查询CPU占用高的情况,会用到sys.sysprocesses ,dm_exec_sessions ,dm_exec_requests 一.查看当前的数据库用户连接有多少 USE ...

  4. 转载:SQL Server中查询CPU占用高的SQL语句

    SQL Server中查询CPU占用高的SQL语句 SQL Server 表变量的用法 究竟什么是敏捷测试--朱少民

  5. 【SQL Server数据迁移】64位的机器:SQL Server中查询ORACLE的数据

    从SQL Server中查询ORACLE中的数据,可以在SQL Server中创建到ORACLE的链接服务器来实现的,但是根据32位 .64位的机器和软件, 需要用不同的驱动程序来实现. 在64位的机 ...

  6. 【SQL Server数据迁移】32位的机器:SQL Server中查询ORACLE的数据

    从SQL Server中查询ORACLE中的数据,可以在SQL Server中创建到ORACLE的链接服务器来实现的,但是根据32位 .64位的机器和软件,需要用不同的驱动程序来实现. 在32位的机器 ...

  7. SQL Server中一些有用的日期sql语句

    SQL Server中一些有用的日期sql语句 1.一个月第一天的 SELECT DATEADD(mm, DATEDIFF(mm,0,getdate()), 0) 2.本周的星期一 SELECT DA ...

  8. SQL Server中存储过程比直接运行SQL语句慢的原因

    原文:SQL Server中存储过程比直接运行SQL语句慢的原因 在很多的资料中都描述说SQLSERVER的存储过程较普通的SQL语句有以下优点: 1.       存储过程只在创造时进行编译即可,以 ...

  9. SQL Server中查询数据库及表的信息语句

    /* -- 本文件主要是汇总了 Microsoft SQL Server 中有关数据库与表的相关信息查询语句. -- 下面的查询语句中一般给出两种查询方法, -- A方法访问系统表,适应于SQL 20 ...

随机推荐

  1. sublime text2支持ng

    这里面记录了sublime text3的一些破解和sublime text2支持ng的方法. http://weblogs.asp.net/dwahlin/archive/2013/08/30/usi ...

  2. chrome调试学习

    参考:http://ued.taobao.com/blog/2012/06/debug-with-chrome-dev-tool/ http://guoshuang.com/frontend/chro ...

  3. 一个简单且丑陋的js切换背景图片基础示例

    不多说,直接上代码,非常基础的一个原生js切换元素背景图片范例 <html> <head> <meta http-equiv="Content-Type&quo ...

  4. Laravel 5 基础(十)- 日期,Mutator 和 Scope

    在我们前面的解决方案中,直接给 published_at 赋值为当前日期实际上是一个临时解决方案,我们需要设定发布日期,可能是未来2天后才发布,让我们修改这个问题. 首先修改控制器: public f ...

  5. 【转】Messagedlg

      ) = mrYes then Close; MessageDlg用法 对话框类型:mtwarning——含有感叹号的警告对话框mterror——含有红色叉符号的错误对话框mtinformation ...

  6. 第五节:什么导致Finalize方法被调用

    Finalize方法在垃圾回收结束时被调用,下面有5种事件会导致开始垃圾回收 1.第0代已满    第0代已满,垃圾回收会自动开始.该事件是目前导致Finalize方法被调用的最常见的一种方式,因为虽 ...

  7. python杂记-1(os模块)

    os模块说明:python os模块包含普遍的操作系统功能 os.access(path, mode) # 检验权限模式 os.chdir(path) # 改变当前工作目录os.chflags(pat ...

  8. p ython笔记第三天

    #!/usr/bin/env python# -*- coding:utf-8 -*- # v = "李杰"# for item in v:# print(item)####### ...

  9. Android去除CPU占用过高时屏幕四周闪红框

    话说有些时间没有更新博客了,今天正好解决这个问题,顺便把它记录下来.. 今天遇到的情况是这样的,当CPU占用过高时,屏幕四周会出现一个红框. 闪一次两次算了,但是挺萌的(TMD)不停的闪,我的钛合金狗 ...

  10. Windows上搭建android开发环境

    在搭建android开发环境时需要四部分内容,框架如下 其中Java SDK和Eclipse在java4android中有过介绍,重点介绍ADT和Android SDK的安装. 安装Android S ...