sql server 修改表结构语法大全
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
2.6.1. 增加字段
要增加一个字段,使用这条命令:
alter table products add column description text;
新增的字段对于表中已经存在的行而言最初将先填充空值。
你也可以同时在该字段上定义约束,使用通常的语法:
alter table products add column description text check (description <> '');
一个新字段不能用非空约束,因为最初的时候该字段必须包含空值。 但是你可以稍后增加一个非空约束。同样,你也不能在一个新字段 上定义缺省值。根据 sql 标准的说明,这样需要对现存行的新 字段填充缺省值,而这个特性还没有实现。但是你可以稍后调整 字段缺省。
2.6.2. 删除字段
要删除一个字段,使用这个命令:
alter table products drop column description;
2.6.3. 增加约束
要增加一个约束,使用表约束语法。比如:
alter table products add check (name <> '');
alter table products add constraint some_name unique (product_no);
alter table products add foreign key (product_group_id) references product_groups;
要增加一个不能写成表约束的非空约束,使用下面语法:
alter table products alter column product_no set not null;
这个约束将立即进行检查,所以表在添加约束之前必须符合约束条件。
2.6.4. 删除约束
要删除一个约束,你需要知道它的名字。如果你给了它一个名字, 那么事情就好办了。否则系统会分配一个生成的名字,这样你就需要 把它找出来了。psql 的命令 \d tablename 在这儿可以帮忙; 其它接口可能也提供了检查表的细节的方法。然后就是这条命令:
alter table products drop constraint some_name;
除了非空约束外,所有约束类型都这么用。要删除非空类型,用
alter table products alter column product_no drop not null;
(要记得非空约束没有名字。)
2.6.5. 改变缺省值
要给一个字段设置缺省值,使用一个象下面这样的命令:
alter table products alter column price set default 7.77;
要删除缺省值,用
alter table products alter column price drop default;
这样相当于把缺省设置为空,至少在 postgresql里是这样的。 结果是,如果我们删除一个还没有定义的缺省值不算错误,因为缺省隐含就是空值。
2.6.6. 给字段改名字
重命名一个字段:
alter table products rename column product_no to product_number;
2.6.7. 给表改名字
to rename a table: alter table products rename to items;
sql server 修改表结构语法大全的更多相关文章
- SQL Server 修改表结构(转载)
SQL Server 修改表结构 本文链接:https://blog.csdn.net/petezh/article/details/81744374 查看指定表结构 exec sp_help Rep ...
- sql server 修改表结构
文章来自http://blog.csdn.net/huwei2003/article/details/6076051 --修改数据库名称.表名称.字段名 --修改数据库名 sp_renamedb 'o ...
- SQL Server 修改表结构后无法保存的老问题
在修改表结构后无法保存,这是每次重装SQL Server后都会遇到的问题,好记性不如烂笔头,在这里记一下吧. 保存修改了的表结构时会提示“不允许保存更改.您所做的更改要求删除并重新创建以下表.您对无法 ...
- SQL Server 修改表结构被阻止 解决办法
在我们的程序开发中,有时候会由于需求的变化而要修改数据库中的表结构.可能是增减列,也可能是修改数据类型,或者修改列名等等.但修改表结构是个危险操作,默认情况下,当你修改表结构时,会弹出如下提示框 上图 ...
- SQL Server修改表结构,不允许保存更改。
当修改表结构时,sql server会弹出对话框,显示以下内容: 不允许保存更改.您所做的更改要求删除并重新创建以下表.您对无法重新创建的表进行了更改或者启用了“阻止保存要求重新创建表的更改”选项. ...
- SQL Server修改表结构后批量更新所有视图
最近修改了数据库表结构,数据同步的时候出了问题,发现很多数据明明已经修改,但是通过视图筛选出来的还是原来的数据,所以怀疑应该是视图缓存了数据,在园子里找到下面的博文,在这里做个记录备忘. 原文链接:h ...
- Sql Server 修改表所属用户
Sql Server 修改表所属用户 exec sp_changeobjectowner 'tablename','dbo' tablename--所要修改的表明 dbo--是表所属的用户,默认是db ...
- SQL脚本修改表结构
SQL脚本修改表结构 新建表:create table [表名]([自动编号字段] int IDENTITY (1,1) PRIMARY KEY ,[字段1] nVarChar(50) default ...
- 获取sql server数据库表结构
if exists (select 1 from sysobjects where name = 'sysproperties'and xtype = 'V')begin DROP VIEW s ...
随机推荐
- Android 进程生命周期 Process Lifecycle
Android 进程生命周期 Process Lifecycle 进程的生命周期 Android系统会尽力保持应用的进程,但是有时为了给新的进程和更重要的进程回收一些内存空间,它会移除一些旧的进程. ...
- Android线程优先级设置方法技巧
对于Android平台上的线程优先级设置来说可以处理很多并发线程的阻塞问题, 比如很多无关紧要的线程会占用大量的CPU时间,虽然通过了MultiThread来解决慢速I/O但是合理分配优先级对于并发编 ...
- Android属性之build.prop生成过程分析
Android的build.prop文件是在Android编译时刻收集的各种property(LCD density/语言/编译时间, etc.),编译完成之后,文件生成在out/target/pro ...
- iOS 获取User-Agent
第一种方法 UIWebView *webView = [[UIWebView alloc] initWithFrame:CGRectZero]; NSString *userAgent = [w ...
- 转:SVN常见问题与解决方法
今天发现一个SVN很奇葩的问题.原来SVN提交的时候也是识别提交路径的大小写的... 发现网上有篇博客总结的挺好的.转载下来,转载出路:http://blog.csdn.net/shinn613/ar ...
- 你知道C#中的Lambda表达式的演化过程吗
你知道C#中的Lambda表达式的演化过程吗? 阅读目录 委托的使用 匿名方法 Func和Action Lambda的诞生 那得从很久很久以前说起了,记得那个时候... 懵懂的记得从前有个叫委托的东西 ...
- C#程序猿电脑重装记录
最近比较空了,闲的手痒,将自己的笔记本进行了重装,之前每次重装都没有记录,这次将本次重装过程记录下来,以便下次参考 1 首先不用说了WIN7旗舰版装好,驱动装好 2 开启Administrator用户 ...
- 【Python】-【类解析】--【脚本实例】
通过脚本事例,解析下Python中类的几个概念在脚本中的应用 脚本如下: ++++++++++++++++++++++++++++++++++++++++ #!/usr/bin/env python# ...
- 关于InnoDB的Next-Key lock
最近一段时间在准备新员工培训的材料,本来打算介绍介绍概念就OK的,但是既然写了事务的章节,就特别想介绍一下锁,介绍了锁,就忍不住想介绍一下Next-Key Lock. 大家知道,标准的事务隔离级别有R ...
- A cost-effective recommender system for taxi drivers
一个针对出租车司机有效花费的推荐系统 摘要 GPS技术和新形式的城市地理学改变了手机服务的形式.比如说,丰富的出租车GPS轨迹使得出做租车领域有新方法.事实上,最近很多工作是在使用出租车GPS轨迹数据 ...