日新阁

取日三省之意,记生活珠玑,每日清新,谓日新阁.

 

关于sql server表名 和字段的一点操作

1、
数据库中表名查询
select name from sysobjects where type = 'U'
select name from sysobjects where type = 'U'  and name!='dtproperties'

查询数据库中用户表(type='U'),表名中不含_OPLOGS字样,和_LOGS字样,以及表名中必须包含下划线(_).
/*  use  **DB
select name from  sysobjects   where ( type = 'U'  and  name!='dtproperties' and  (not name like  '%_OPLOGS%') and  (not name like  '%_LOGS%') ) and  name like '%[_]%'
*/
2、
修改表字段,如:向SHUXUE表 添加AA字段。
/*
ALTER table  SHUXUE  add AA varchar(40) null
*/
3、
表中是否存在某字段的查询语句,如果不存在返回-1.
StringBuilder sqlStr=new StringBuilder();
     
    sqlStr.Append("if not exists   (select   *   from   syscolumns   where   id=object_id('");
    sqlStr.Append(tableName);
    sqlStr.Append( "')   and   name='");
    sqlStr.Append(tableName).Append("_AA')");
    sqlStr.Append(" select -1 as mycount ");

    return sqlStr.ToString();
4、
// if   exists   (select   *   from   syscolumns   where   id=object_id('SHENGWU')   and   name='SHENGWU_P') 
// print   'exists'

5、
为表添加字段。可以侦测表中有没有这字段。
如果没有,添加该字段。

转-- -用存储过程来实现 修改表格字段

create   procedure funcaddcolumn
@tablename  varchar(128),  -- 表名
@columnname varchar(128),---列名
@columntype varchar(128) -- 列定义

as
set @tablename = ltrim(rtrim(@tablename))
set @columnname = ltrim(rtrim(@columnname))
set @columntype = ltrim(rtrim(@columntype))

declare @string varchar(8000)

if not exists( select * from syscolumns where id=object_id(@tablename) and name = @columnname )
begin
select  @string =  alter  table + @tablename + add [ + ltrim(rtrim(@columnname)) + ]  + @columntype + null
print @string
execute(@string)
end
go

6、
GUID(Global unique identifier)全局唯一标识符,它是由网卡上的标识数字(每个网卡都有唯一的标识号)以及 CPU 时钟的唯一数字生成的的一个 16 字节的二进制值。

GUID 的格式为“xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx”,其中每个 x 是 0-9 或 a-f 范围内的一个十六进制的数字。例如:6F9619FF-8B86-D011-B42D-00C04FC964FF 即为有效的 GUID 值。
世界上的任何两台计算机都不会生成重复的 GUID 值。GUID 主要用于在拥有多个节点、多台计算机的网络或系统中,分配必须具有唯一性的标识符。在 Windows 平台上,GUID 应用非常广泛:注册表、类及接口标识、数据库、甚至自动生成的机器名、目录名等

在这次开发时,我使用了:
StringBuilder sqlStr=new StringBuilder();

    sqlStr.Append( "update ").Append(tableName);
    sqlStr.Append(" set ").Append(tableName).Append("_AA=NewID()");

    return sqlStr.ToString();

posted on 2007-08-07 16:10  flashicp  阅读(464)  评论(0编辑  收藏  举报

导航