`
bluedusk
  • 浏览: 263638 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Sybase常用的命令集合

阅读更多

常用的命令集合
一、配置命令
   1、检查CPU使用情况:
      sp_sysmon "internal","model"
      internal是监视时间。例如:"00:01:00"
      model是模块的名称。包括'kernel','wpm','parallel','taskmgmt','appmgmt','esp','housekeeper','monaccess','xactsum','xactmgmt','indexmgmt','mdcache','locks','dcache','pcache','memory','recovery','diskio','netio'

   2、检查使用的最大的引擎数(CPU)
      sp_configure "max online engines"
      此命令还可以改变sybase系统使用CPU的数量。
      注意:改变后需要重新启动sybase才可以使培植生效。引擎的数量是总的CPU数量减一

   3、显示引擎号、状态、相关任务数以及引擎启动的时间:
      select engine, status, affinitied, starttime from sysengines

   4、显示每个用户的繁忙程度
      sp_reportstats

   5、监视配置参数的运行情况
      sp_monitorconfig "open objects"
      参数见sp_monitorconfig中的值

二、权限命令
   1、给一个用户授所有的权限
      grant all to user_name

   2、给一个用户授对某张表的所有权限
      grant all on table_name to user_name

   3、添加一个登录(login)
      sp_addlogin

三、TSQL使用
   1、统计信息更新
      select "print '"+name+"'"+char(10)+"update statistics "+name+ char(10) + "go"
        from sysobjects
       where (type='U' or type='S')
       order by name

   2、显示所有触发器的名称、建立时间
      SELECT USER_NAME(A.uid) 'Table Owner',
             B.name 'Table Name',
             A.name 'Trigger Name',
             CONVERT(char(10),A.crdate,101)+SUBSTRING(CONVERT(char(20),A.crdate,0),13,7) 'Create Date'
      FROM sysobjects A,
           sysobjects B 
      WHERE A.type='TR' 
        AND (A.id=B.instrig OR A.id=B.updtrig OR A.id=B.deltrig)

   3、关于参照
      --生成建立已有参照的SQL语句
      select distinct result_sql='alter table '+rtrim(object_name(tableid))+' add constraint '
      +rtrim(object_name(constrid))+' foreign key('+
      +col_name(sysreferences.tableid,sysreferences.fokey1)+substring(',',1,sysreferences.fokey2)
      +col_name(sysreferences.tableid,sysreferences.fokey2)+substring(',',1,sysreferences.fokey3)
      +col_name(sysreferences.tableid,sysreferences.fokey3)+substring(',',1,sysreferences.fokey4)
      +col_name(sysreferences.tableid,sysreferences.fokey4)+substring(',',1,sysreferences.fokey5)
      +col_name(sysreferences.tableid,sysreferences.fokey5)+substring(',',1,sysreferences.fokey6)
      +col_name(sysreferences.tableid,sysreferences.fokey6)+substring(',',1,sysreferences.fokey7)
      +col_name(sysreferences.tableid,sysreferences.fokey7)+') '
      +'references '+rtrim(object_name(reftabid))+'('
      +col_name(sysreferences.reftabid,sysreferences.refkey1)+substring(',',1,sysreferences.refkey2)
      +col_name(sysreferences.reftabid,sysreferences.refkey2)+substring(',',1,sysreferences.refkey3)
      +col_name(sysreferences.reftabid,sysreferences.refkey3)+substring(',',1,sysreferences.refkey4)
      +col_name(sysreferences.reftabid,sysreferences.refkey4)+substring(',',1,sysreferences.refkey5)
      +col_name(sysreferences.reftabid,sysreferences.refkey5)+substring(',',1,sysreferences.refkey6)
      +col_name(sysreferences.reftabid,sysreferences.refkey6)+substring(',',1,sysreferences.refkey7)
      +col_name(sysreferences.reftabid,sysreferences.refkey7)+')' 
      +char(10)+"go"
       from sysreferences,syscolumns,sysobjects 
      where sysreferences.tableid=sysobjects.id
        and sysobjects.id=syscolumns.id
        and sysobjects.type='U' 
      order by sysobjects.name
      go
      --生成删除参照的SQL语句
      select distinct result_sql='alter table '+rtrim(object_name(sysreferences.tableid))+' drop constraint '+rtrim(object_name(sysreferences.constrid))+char(10)+"go"
        from sysreferences,syscolumns,sysobjects 
       where sysreferences.tableid=sysobjects.id
         and sysobjects.id=syscolumns.id
         and sysobjects.type='U'
       order by object_name(sysreferences.tableid)
      go

   4、关于表级锁
      --列出所有锁类型为行锁的表
      select name
        from sysobjects
       where type='U'
         and sysstat2 & 57344 = 32768
         and name not like "XT%"
       order by name 

      --调优的方法有:调整锁类型,调整表的聚簇索引
      --调整表锁类型为行锁,可以提高对表的并发访问性能,但是同时也会占用更多的系统资源
      --修改行锁的SQL语句:alter table [table_name] lock [datarows|allpages]
      --
      --调整表的聚簇索引在数据插入时,降低对表的最后一页的争用
      --Sybase规定一张表只能有一个聚簇索引,所以在调整聚簇索引时,要先删除原有的聚簇索引,然后再建立新的
      --例如将SB_ZSXX表的在ZSXH上聚簇索引修改为在NSRSBH上的聚簇索引.
      --删除原聚簇索引PK_SB_ZSXX
      drop index SB_ZSXX.PK_SB_ZSXX
      go
      create  nonclustered index PK_SB_ZSXX on SB_ZSXX(ZSXH)
      go
      -- 建立IDX_SB_ZSXX_NSRSBH的聚簇索引
      drop index SB_ZSXX.IDX_SB_ZSXX_NSRSBH
      go
      create  clustered index IDX_SB_ZSXX_NSRSBH on SB_ZSXX(NSRSBH)
      go
      --以上的索引信息可以用sp_help命令列出

   5、求出指定字段等于指定值的记录数
      declare @lc_colname varchar(30)
      --declare @lc_colvalue /*定义欲求值的变量,随着变量的类型定义不同的值*/
      --取包含指定列名的表
      select distinct name=object_name(id) into #AA from syscolumns where name = @lc_colname
      --生成SQL,求出指定字段等于指定值的记录数
      select "insert into #BB select tname='"+name+"',cnt=count(*) from "+name+" where " + @lc_colname + "='" + @lc_colvalue + "'"+char(10)+"go"
        from #AA
      --运行SQL
      --检查记录不为零的表,既为求出的表
      select * from #BB where cnt>0

   6、列出所有无主键的表
      select name from sysobjects
       where name not in (
                           SELECT object_name(id)
                           FROM   sysindexes
                           WHERE  indid > 0
                                  AND status2 & 2 = 2
                                  and status & 2048 = 2048
                         )
       and type="U"
     order by name

   7、关于用户登录
      --锁定用户
      select "sp_locklogin "+name+",'lock'"+char(10)+"go"
        from syslogins
       where name not like "%prim%"
         and name not like "%maint%"
         and name not like "sa"
       order by name

       --解除锁定的用户
       select "sp_locklogin "+name+",'unlock'"+char(10)+"go"
        from syslogins
       where name not like "%prim%"
         and name not like "%maint%"
         and name not like "sa"
       order by name
   8、为ctais_maint授权
      select "grant all on "+name+" to ctais_maint"+char(10)+"go" from sysobjects where type="U"

   9、整理出字段类型有text和image的表
      --text类型
      select distinct name=object_name(id)
        from syscolumns
       where type=35
         and id in (select id from sysobjects where type="U")
       order by object_name(id)

      --image类型
      select distinct name=object_name(id)
        from syscolumns
       where type=34
         and id in (select id from sysobjects where type="U")
       order by object_name(id)

   10、修改identity列的最大值
      --设置包含identity列的表为可直接插入记录
      set identity_insert [table] [on|off]
      --插入一个比较大的值
      insert into [table] values([value])

分享到:
评论

相关推荐

    sybase常用的命令集合

    sybase常用的命令集合 sybase命令资料收集

    DELPHI技巧集(集合各种开发源码)

    38 Function.htm 部分函数、命令、属性中文说明 13K 39 Get_form.htm Win95/98下监控运行的其他程序 2K 40 Get_info.htm 使用Delphi获取系列信息 3K 41 Get_net_friend.htm 如何在程序中动态取得Win95/98的...

    SQL,全称结构化查询语言(Structured Query Language)

    SQL语言由命令、子句、运算和集合函数等构成,并可与多种数据库程序协同工作,如MS Access、DB2、Informix、MS SQL Server、Oracle、Sybase等。 SQL可以分为两个部分:数据操作语言(DML)和数据定义语言(DDL)。...

    Turbolinux 学习入门宝典

    第7章 维护技巧与常用命令 134 7.1 TDS 7 上安装SYBASE 11.9.2 134 7.2 TDS 7 上安装SYBASE 12.5 134 7.3 TDS7.0上ASE12.5的补丁安装 135 7.3.1 操作系统及数据库版本说明: 135 7.3.2 补丁安装过程 135 7.3.3 检查...

    dbvis_windows-x64_9_1_5

    使用SQL命令,还可以执行所有的SQL语句。 3版本区别 个人版和免费版本相比,个人版有以下功能扩展: #编辑表格数据。 #支持表格/索引创建。 #SQL脚本执行。 #多个结果集合管理。 #数据图表化。 #BLOB/CLOB数据管理。...

    dbvis_windows-x64_9_0_6.zip

    使用SQL命令,还可以执行所有的SQL语句。 个人版和免费版本相比,个人版有以下功能扩展: #编辑表格数据。 #支持表格/索引创建。 #SQL脚本执行。 #多个结果集合管理。 #数据图表化。 #BLOB/CLOB数据管理。 #...

    dbvis_windows_9_0_6.exe

    使用SQL命令,还可以执行所有的SQL语句。 个人版和免费版本相比,个人版有以下功能扩展: #编辑表格数据。 #支持表格/索引创建。 #SQL脚本执行。 #多个结果集合管理。 #数据图表化。 #BLOB/CLOB数据管理。 #...

    数据库课程设计——图书管理系统.doc

    基本的SQL 命令只需很少时间就能学会,最高级的命令在几天内便可掌握. 3。 所有关系数据库的公共语言 由于所有主要的关系数据库管理系统都支持SQL语言,用户可将使用SQL的技能从一个RD BMS(关系数据库管理系统)转...

    数据库学习基础之名词解释

    模糊数的表示主要有模糊区间数、模糊中心数、模糊集合数和隶属函数等。  统计数据库  管理统计数据的数据库系统。这类数据库包含有大量的数据记录,但其目的是向用户提供各种统计汇总信息,而不是提供单个记录的...

    计算机基础计算机系统知识点.doc

    " "11:外存是是主存储器的后备和补充,不能和CPU直接交换数据 " "12:指令:指示计算机执行某种操作的命令,由一串二进制数码组成,包" "括地址码和操作码 " "13:程序:由一系列的指令组成,它是为解决某一问题而...

    数据库设计系列之一.pdf

    同样 的道理计算上的数据都像这样⽆序的堆放在⼀起,让⼈⽆法查找,那么这种数据集合并不能够称之为数据库。 数据库管理系统是从图书馆的管理⽅法改进⽽来,21世纪, 资料太多,信息太多,⼤家都往电脑⾥⾯放,这样...

    超级有影响力霸气的Java面试题大全文档

    assertion(断言)在软件开发中是一种常用的调试方式,很多开发语言中都支持这种机制。在实现中,assertion就是在程序中的一条语句,它对一个boolean表达式进行检查,一个正确程序必须保证这个boolean表达式的值为...

    java 面试题 总结

    assertion(断言)在软件开发中是一种常用的调试方式,很多开发语言中都支持这种机制。在实现中,assertion就是在程序中的一条语句,它对一个boolean表达式进行检查,一个正确程序必须保证这个boolean表达式的值为...

Global site tag (gtag.js) - Google Analytics