Sql Server 添加删除字段判断表或字段是否存在得到

   增加字段

  alter table docdsp add dspcode char(200)

  删除字段

  ALTER TABLE table_NAME DROP COLUMN column_NAME

  修改字段类型

  ALTER TABLE table_name ALTER COLUMN column_name new_data_type

  改名

  sp_rename

  更改当前数据库中用户创建对象(如表、列或用户定义数据类型)的名称。

  语法

  sp_rename [ @objname = ] 'object_name' ,

  [ @newname = ] 'new_name'

  [ , [ @objtype = ] 'object_type' ]

  =======================================================

  --假设要处理的表名为: tb

  --判断要添加列的表中是否有主键

  if exists(select 1 from sysobjects where parent_obj=object_id('tb') and xtype='PK')

  begin

  print '表中已经有主键,列只能做为普通列添加'

  --添加int类型的列,默认值为0

  alter table tb add 列名 int default 0

  end

  else

  begin

  print '表中无主键,添加主键列'

  --添加int类型的列,默认值为0

  alter table tb add 列名 int primary key default 0

  end

  /**************************************************************************************/

  判断table1中是否存在name字段

  if exists(select * from syscolumns where id=object_id('table1') and name='name') begin

  select * from people;

  end

  ========================================================================

  如果是实表可以用

  if exists (select * from sysobjects where id = object_id(N'[dbo].[表名]') and OBJECTPROPERTY(id, N'IsUserTable') = 1) drop table [dbo].[表名]--如果表存在就删除

  如果是临时表可以用

  if object_id('tempdb..##temp') is not null

  drop table ##temp

  说明,如果用查找实表方法来打临时表会找不到.发布区别对代.

  ==========================================================

  得到表字段的描述

  我一般用这个视图

  Create view fielddesc

  as

  select o.name as oname, c.name as cname,convert(varchar(30),p.value) as value,p.smallid as psmallid,t.name as tname

  from syscolumns c

  join systypes t on c.xtype = t.xtype

  join sysobjects o on o.id=c.id

  left join sysproperties p on p.smallid=c.colid and p.id=o.id

  where o.xtype='U'

  查询时:

  Select * from fielddesc where oname = '你的表名'

时间: 2024-10-26 02:35:01

Sql Server 添加删除字段判断表或字段是否存在得到的相关文章

sql server 查询数据库所有的表名+字段

原文:sql server 查询数据库所有的表名+字段 SELECT * FROM INFORMATION_SCHEMA.columns WHERE TABLE_NAME='Account' SELECT    (case when a.colorder=1 then d.name else '' end) as 表名,--如果表名相同就返回空       a.colorder as 字段序号,       a.name as 字段名,       (case when COLUMNPROPER

使用 SQL Server 添加删除修改查询储存过程

  --添加 create procedure usp_add ( @table nvarchar(255), @values nvarchar(max)=null ) as declare @sql nvarchar(max) set @sql='insert into '+@table if @values is not null set @sql='insert into '+@table+' values('+@values+')' exec sp_executesql @sql sel

用SQL语句添加删除修改字段、一些表与字段的基本操作、数据库备份等_MsSql

用SQL语句添加删除修改字段 1.增加字段 alter table docdsp add dspcode char(200) 2.删除字段 ALTER TABLE table_NAME DROP COLUMN column_NAME 3.修改字段类型 ALTER TABLE table_name ALTER COLUMN column_name new_data_type 4.sp_rename 改名 更改当前数据库中用户创建对象(如表.列或用户定义数据类型)的名称. 语法 sp_rename

SQL Server创建数据库和数据表的相关约束实现方法_MsSql

本文分析了SQL Server创建数据库和数据表的相关约束实现方法.分享给大家供大家参考,具体如下: 创建约束语法如下: CREATE DATABASE [test] ON (NAME=N'test',FILENAME=N'd:\SQL2kt_Data\test.mdf',SIZE=3mb,MAXSIZE=UNLIMITED,FILEGROWTH=1MB) LOG ON (NAME=N'test_log',FILENAME=N'd:\SQL2kt_Data\test_log.ldf',SIZE=

sql server建库、建表、建约束技巧

下面给大家分享下sql server建库.建表.建约束技巧,下文介绍有文字有代码. --创建School数据库之前:首先判断数据库是否存在,若存在则删除后再创建,若不存在则创建-- --exists关键字:括号里边能查询到数据则返回'true' 否则返回'false' if exists(select * from sysdatabases where name = 'School') --exists返回'true'则执行删除数据库操作-- drop database School --exi

SQL Server创建数据库和数据表的相关约束实现方法

本文分析了SQL Server创建数据库和数据表的相关约束实现方法.分享给大家供大家参考,具体如下: 创建约束语法如下: CREATE DATABASE [test] ON (NAME=N'test',FILENAME=N'd:\SQL2kt_Data\test.mdf',SIZE=3mb,MAXSIZE=UNLIMITED,FILEGROWTH=1MB) LOG ON (NAME=N'test_log',FILENAME=N'd:\SQL2kt_Data\test_log.ldf',SIZE=

SQL Server 2005:向系统表说再见

微软的SQL Server 数据库管理员 ,快快想一下!在不使用任何的文档的情况下,编写一个查询,从SQL Server 2000系统表中抽取索引的列表,然后列举每个索引中的字段,并判断这个字段是否按照升序或者降序进行排序.你有两分钟的时间.快!  如果你现在真的停下阅读,开始用必不可少的两分钟时间思考这项不讨好的任务,那么现在你就陷入了一个大麻烦中,这里面涉及了系统索引.系统索引关键字,系统字段,以及一些元数据函数,其中包括类似OBJECT_NAME 和INDEXKEY_PROPERTY这样的

SQL Server利用HashKey计算列解决宽字段查询的性能问题

SQL Server利用HashKey计算列解决宽字段查询的性能问题 主人翁        本文主人翁:MSSQL菜鸟和MSSQL老鸟. 问题提出        某年某月某日,某MSSQL菜鸟满脸愁容的跑到老鸟跟前,心灰意懒的对老鸟说"我最近遇到一个问题,很大的问题,对,非常大的问题".老鸟不急不慢的推了推2000度超级近视眼镜框,慢吞吞的说:"说来听听".        "我有一个100万数据量的表,有一个宽度为7500字段,不幸的是现在我需要根据这个字

MSSQL-应用案例-SQL Server 2016基于内存优化表的列存储索引分析Web Access Log

问题引入 在日常的网站运维工作中,我们需要对网站客户端访问情况做统计.汇总.分析和报表展示,以数据来全面掌控网站运营和访问情况.当不可预知的意外情况发生时,我们可以快速发现问题以及采取相应的措施.比如:当网站受到黑客攻击时的流量陡增,又或者是网站某个资源发生意外抛异常等情况. 在提供Web服务的服务器上,比如IIS.Apache都存在访问日志记录,这篇是文章是以SQL Server 2016基于内存优化表的列存储索引来分析Apache Web Access Log为例,讲解分析网站访问情况,因此