温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

Sql Server各系统表说明及使用方法

发布时间:2021-10-12 14:55:09 来源:亿速云 阅读:112 作者:柒染 栏目:大数据

今天就跟大家聊聊有关Sql Server各系统表说明及使用方法,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。

我们平时写一般的SQL语句的时候,可能不会用到系统表,不过在一些特殊的情况下就会用到了,比如说在系统运用的时候,我们根据日期动态创建的数据表,如果要从里面获取数据的时候最好需要加上判断这个表是否存在,如果存在我们就从表里面取数据,如果不存在就跳出。

我们先介绍一下各个系统表的作用,后面再取几个例子来说明用法。

SQL系统表

  • sysaltfiles 主数据库 保存数据库的文件

  • syscharsets 主数据库 字符集与排序顺序

  • sysconfigures 主数据库 配置选项

  • syscurconfigs 主数据库 当前配置选项

  • sysdatabases 主数据库 服务器中的数据库

  • syslanguages 主数据库 语言

  • syslogins 主数据库 登陆帐号信息

  • sysoledbusers 主数据库 链接服务器登陆信息

  • sysprocesses 主数据库 进程

  • sysremotelogins 主数据库 远程登录帐号

  • syscolumns 每个数据库 列

  • sysconstrains 每个数据库 限制

  • sysfilegroups 每个数据库 文件组

  • sysfiles 每个数据库 文件

  • sysforeignkeys 每个数据库 外部关键字

  • sysindexs 每个数据库 索引

  • sysmenbers 每个数据库 角色成员

  • sysobjects 每个数据库 所有数据库对象

  • syspermissions 每个数据库 权限

  • systypes 每个数据库 用户定义数据类型

  • sysusers 每个数据库 用户

代码演示

1.判断数据表存在

我们要从数据库里查询付款流水的信息,付款流水表默认的是txsPayFlow表,后面的tXsPayFlow$201805是代表2018年5月的付款流水,这个表是每个月自动创建的,所以如果我们要查2018年5月的销售时就要从代年月的分割表里查询。

    Sql Server各系统表说明及使用方法

    正常来说我们查一下18年5月的流水直接就写

    Sql Server各系统表说明及使用方法

    因为我们的软件里没有做6月的月结,所以6月的表没创建,如果我们这里要查6月的数据,用上面的方法会直接报错了

    Sql Server各系统表说明及使用方法

    这个时候我们的系统表就起到作用了,上面写到sysobjects可以看到数据库的对象,所以我们首先判断这个表是否在系统里存在,如果存在取数据,不存在输出无此表信息。

    Sql Server各系统表说明及使用方法

    这样代码就可以正常运行了。

    2.给数据表里增加字段

    一般我们程序升级的时候,数据库有可能也会增加字段,为了多次执行不报错,我们在添加字段的时候就需要判断表里面是否有这个字段。

    判断我们要增加字段的表里是否有这个字段用到了sysobjects,syscolumns这两个表,通过两个表里的ID关联,来判断是否有我们要增加的列

    例:我们要在balance表里面增加一个sflag的列。

    Sql Server各系统表说明及使用方法

    通过关联查询我们可以看到系统表里的列

    Sql Server各系统表说明及使用方法

    这样我们写增加一个sflag的列的代码

    Sql Server各系统表说明及使用方法

    当执行完第一次时,下面提示的命令已成功完成,我们从数据库里已经看到了列也增加了

    Sql Server各系统表说明及使用方法

    然后我们再执行一次

    Sql Server各系统表说明及使用方法

    下面的提示里面就告诉我们列已经存在了。

    看完上述内容,你们对Sql Server各系统表说明及使用方法有进一步的了解吗?如果还想了解更多知识或者相关内容,请关注亿速云行业资讯频道,感谢大家的支持。

    向AI问一下细节

    免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

    AI