• Sql:查看数据库表和表结构的语句


    T-sql

    显示表结构和字段信息的sql语句:

    exec sp_help tablename; ~~使用存储过程 sp_help

    显示数据库包含哪些表的sql语句:
    use yourDBname;
    select name from sysobjects where xtype='u';  ~~使用系统表 sysobjects

    在当前数据库中查询其他数据库的表
    use shaowu2_2013;
    select * from ac where acid not in(select acid from shaowu2_2014.dbo.ac); -- in old,but new has not this id

    ~~~数据库系统中数据库对象的引用:数据库.对象所有者.对象名  (好比: 大楼.房间.谁的.什么东西)


    --------------------------------------------------
     SqlServer判断数据库、表、存储过程、函数是否存在
    --------------------------------------------------
    判断数据库是否存在 if exists (select * from sys.databases where name = '数据库名')

    ~~~sql2008有系统表:sys.databases,而sql2000则没有 提示对象名无效

    --drop database [数据库名]

    判断某个用户表是否存在 if exists (select * from sysobjects where id = object_id(N'[表名]') and OBJECTPROPERTY(id, N'IsUserTable') = 1)


    ~~object_id(srhname) 函数,返回某个对象的id,( 等效于: select id from sysobjects where name=@srhname )

    ~~objectproperty(sysobjectID,prop) 获取字段的属性

    --drop table [表名]


    判断存储过程是否存在 if exists (select * from sysobjects where id = object_id(N'[存储过程名]') and OBJECTPROPERTY(id, N'IsProcedure') = 1)
    ~~同上 sysobjects系统表 object_id(objname)函数,objectproperty(objId, prop)函数,数据库的对象包括:表 视图 索引 约束 存储过程 函数
    -- drop procedure [存储过程名]

    判断函数是否存在 IF OBJECT_ID (N'函数名') IS NOT NULL DROP FUNCTION dnt_split

    判断数据库是否开启了全文搜索 select databaseproperty('数据库名','isfulltextenabled')

    判断全文目录是否存在 select * from sysfulltextcatalogs where name ='全文目录名称'

  • 相关阅读:
    39岁了,我依旧要谈梦想
    ASP原码加密工具介绍
    extjs_07_combobox&tree&chart
    JS0基础学习笔记(1)
    AndroidUI组件之ActionBar
    Sourcetree 更新git账号密码
    iOS人脸识别核心代码(备用)
    ios 中的tintColor
    appStore上传苹果应用程序软件发布
    iOS9适配 之 关于info.plist 第三方登录 添加URL Schemes白名单
  • 原文地址:https://www.cnblogs.com/stephenykk/p/3186773.html
Copyright © 2020-2023  润新知