• sql server 特殊sql



    select t.type,t.name 表名 from sysobjects t where t.type in ('U','v' ,'TR') and t.name like '%%';

    select t.type,t.name 表名,f.name 列名 from sysobjects t, syscolumns f where t.id = f.id and t.type in ('U','v' ,'TR');

    select t.type,t.name 表名,f.name 列名 from sysobjects t, syscolumns f where t.id = f.id and t.type in ('U','v' ,'TR') and t.name = '';
    select t.type,t.name 表名,f.name 列名 from sysobjects t, syscolumns f where t.id = f.id and t.type in ('U','v' ,'TR') and t.name like '%%';

    select t.type,t.name 表名,f.name 列名 from sysobjects t, syscolumns f where t.id = f.id and t.type in ('U','v' ,'TR') and f.name = '';
    select t.type,t.name 表名,f.name 列名 from sysobjects t, syscolumns f where t.id = f.id and t.type in ('U','v' ,'TR') and f.name like '%%';

    select name from sysobjects where type = 'v' --全部视图
    select name from sysobjects where type = 'v' and substring(name,1,3)<>'sys' --用户建立的视图

    -- 查询最后一分钟执行的sql语句
    SELECT TOP 100
    QS.last_execution_time AS '执行时间',
    qs.creation_time as '首次执行时间',
    ST.text AS '执行的SQL语句',
    QS.execution_count AS '执行次数',
    QS.total_elapsed_time AS '耗时',
    QS.total_logical_reads AS '逻辑读取次数',
    QS.total_logical_writes AS '逻辑写入次数',
    QS.total_physical_reads AS '物理读取次数',
    qp.query_plan as 'xml'
    -- QS.*
    FROM sys.dm_exec_query_stats QS
    CROSS APPLY
    sys.dm_exec_sql_text(QS.sql_handle) ST
    CROSS APPLY
    sys.dm_exec_query_plan(qs.plan_handle) qp
    WHERE QS.last_execution_time BETWEEN dateadd(Minute,-1,getdate()) AND dateadd(Minute,+2,getdate())
    ORDER BY
    last_execution_time asc,creation_time asc, QS.total_elapsed_time DESC;

    -- 全库查找指定的字符串
    declare @Str nvarchar(max), @tableName varchar(50), @colName varchar(50), @rowCount int
    select a.name tableName, b.name Colname, 0 as IsFound into #t1
    from sysobjects a join syscolumns b on a.id=b.id join systypes c on b.xtype=c.xtype
    where a.[type]='U' and c.name in ('varchar') --这里是设置字段的类型,以缩小范围
    declare _c1 cursor for select Colname, tableName from #t1
    open _c1
    fetch next from _c1 into @colName, @tableName
    while @@FETCH_STATUS=0 begin
    --print @Str
    select @Str='select @rowCount=count(1) from ['+@tableName+'] where ['+@colName+'] = ''要查找的内容''' --这里是要查找的内容
    exec sp_executesql @Str, N'@rowCount int output', @rowCount output
    if @rowCount>0 update #t1 set IsFound=1 where ColName=@colName and tableName=@tableName
    fetch next from _c1 into @colName, @tableName
    end
    close _c1
    deallocate _c1
    select * from #t1 where IsFound=1
    drop table #t1;
  • 相关阅读:
    关于观察者模式和发布/订阅模式
    git:error: Your local changes to the following files would be overwritten by merge:
    node中几个路径的梳理
    centOS 开启服务器后无法访问(大坑啊)
    文件上传简记
    自建nodejs服务器(一:有个服务器)
    nodejs上使用sql
    express笔记
    windows下node配置npm全局路径(踩坑)
    DropMaster
  • 原文地址:https://www.cnblogs.com/gaobo543013306/p/14933361.html
Copyright © 2020-2023  润新知