沧海笑的艺术人生

沧海一声笑, 滔滔两岸潮,浮沉随浪只记今朝
  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

sql server 使用小技巧(不断累积中)

Posted on 2005-08-22 16:27  沧海笑  阅读(524)  评论(0编辑  收藏  举报
一。dbcc memusage:占用内存多少?
二。整理数据库中所有表的索引碎片:sp_msforeachtable 'dbcc dbreindex("?")'
三。数据库远程访问:
       方案一: SELECT *  FROM OPENDATASOURCE('SQLOLEDB', 'Data Source=ServerName;
                         User ID=MyUID;Password=MyPass').Northwind.dbo.表名
       方案二: select *  from openrowset('SQLOLEDB','sql服务器名';'用户名';'密码' ,数据库名.dbo.表名)
四。
        select name from sysobjects where type='u' --读表语句
        select name from syscolumns where id=object_id('表名')--读字段名(sysobject:系统表,存放表,视图,规则,存储过程,默认值和触发器信息)
        select db_id (N'数据库名字'):检测相应数据库的ID(dbid)
        select object_id (N'对象名'):检测相应对象名的ID(objectid)
        SELECT * FROM table WITH (HOLDLOCK):锁定数据库的一个表,其他事务可以读取表,不能删除表;
        SELECT * FROM table WITH (TABLOCKX):锁定数据库的一个表, 其他事务不能读取表、更新和删除;
 五。UPDATE 。。。FROM。。。
         UPDATE a
         SET  a....
         FROM table a
         INNER JOIN table b
         ON ...... 
         WHERR......