SQL Server 表结构操作
一、创建表
- --直接定义主外键
- create table wallet(
- ID varchar(36) primary key,
- Money decimal(18,2) not null,
- Name varchar(36) default '余额',
- Member_ID varchar(36) foreign key references Member(ID) unique
- )
- --或最后定义主外键
- create table wallets(
- ID varchar(36),
- Money decimal(18,2) not null,
- Name varchar(36) default '余额',
- Member_ID varchar(36) unique,
- primary key(ID),
- foreign key(Member_ID) references Member(ID),
- check(Money > -1),
- )
二、修改表结构
1. 添加字段
- --alter table 表名 add 字段名 数据类型
- alter table wallet add CreateTime date
2. 修改字段名称/表名称
- exec sp_rename '表名.旧字段名','新字段命';
3. 修改字段类型
- --alter table 表名 alter column 字段名 数据类型
- alter table wallet alter column Money decimal(15,2)
4. 设置自动增长可输入
因为自动增长无法取消,除非采用重新建表再把数据同步过来的方法。所以设置该表自动增长字段为可以用insert的语句手动输入
- --set IDENTITY_INSERT 表名 on
- set IDENTITY_INSERT wallet on
三、修改约束
1. 添加/修改约束
- --修改表字段不能为空
- alter table wallet alter column createtime date not null
- --添加约束表字段必须唯一
- alter table wallet add unique(createtime)
- --添加主键约束
- alter table wallet add primary key(ID)
- --添加外键
- alter table wallet add foreign key(Member_ID) references Member(ID)
- --添加自定义约束
- alter table wallet add check(money != 0)
- --添加或修改字段的默认值
- alter table wallet add default(getdate()) for createtime
其中check、foreign key、primary key、unique,使用constraint关键字为约束命名例如:
- alter table wallet add constraint names_unique unique(createtime)
约束的名称为names_unique
2. 删除约束
- --alter table 表名 drop constraint 约束名称
- alter table wallet drop constraint names_unique
- --取消默认值:设置默认值null并且设置该字段允许为null
- alter table wallet alter column createtime date null
- alter table wallet add default(null) for createtime
SQL Server 表结构操作的更多相关文章
- SQL server 表结构转Oracle SQL脚本
SQL server 表结构转Oracle SQL脚本 /****** Object: StoredProcedure [dbo].[getOracle] Script Date: 2019/7/25 ...
- SQL Server表结构和数据导入到MySQL
借助的工具:Navicat for MySQL,链接:http://pan.baidu.com/s/1kVCw8IF 密码:g927 可以很明确的肯定,主键和自增列是没办法导入的,只能是表结构和数据. ...
- Sql Server 表结构相关
1.库表列信息 --取所有库 SELECT Name FROM Master..SysDatabases ORDER BY Name --查询所有表 select name from 库名..syso ...
- 查询sql server 表结构
select column_name,data_type from information_schema.columns where table_name = '表名'
- sql server 表结构 导出 到excel
SELECT 表名 then d.name else '' end, 表说明 then isnull(f.value,'') else '' end, -- 字段序号 = a.colorder, 字段 ...
- SQL server学习(二)表结构操作、SQL函数、高级查询
数据库查询的基本格式为: select ----输出(显示)你要查询出来的值 from -----查询的依据 where -----筛选条件(对依据(数据库中存在的表)) group by ----- ...
- SQL Server 表的管理_关于数据增删查改的操作的详解(案例代码)
SQL Server 表的管理_关于数据增删查改的操作的详解(案例代码)-DML 1.SQL INSERT INTO 语句(在表中插入) INSERT INTO 语句用于向表中插入新记录. SQL I ...
- SQL SERVER表不能修改表结构的处理方法
SQL SERVER表提示不能修改表结构,这究竟是什么原因呢?下面就为您介绍处理该问题的方法,如果您在SQL SERVER表修改方面遇到过问题,不妨一看. 新装的SQL SERVER 2008,打开原 ...
- SQL Server 表的管理_关于表的操作增删查改的操作的详解(案例代码)
SQL Server 表的管理_关于表的操作增删查改的操作的详解(案例代码) 概述: 表由行和列组成,每个表都必须有个表名. SQL CREATE TABLE 语法 CREATE TABLE tabl ...
随机推荐
- 用蓝牙连接debian和诺基亚手机
本方法已经用debian 4.0.诺基亚9300和一个hl-united牌子的USB蓝牙适配器测试过了,效果很好. 1.安装必要的软件包: #apt-get install ...
- 图像滤镜艺术---(Nostalgla Filter)老照片滤镜
原文:图像滤镜艺术---(Nostalgla Filter)老照片滤镜 (Nostalgla Filter)老照片滤镜 Nostalgla Filter主要是通过算法来模拟一种复古,陈旧的照片风格,以 ...
- ArcGIS中Python逆地理编码,根据坐标获取实际的地址
import json import urllib import arcpy def getAddress(lng,lat): url= 'http://restapi.amap.com/v3/geo ...
- System.Exception: ORA-12541: TNS: 无监听程序
今天在一个服务器上发布一个web服务(数据库也装在这台机器上):开发工具 Visual Studio 2008 Oracle但是部署好,浏览的时候报错了:System.Web.Services.Pro ...
- Interactive Data Display如何显示菜单?
貌似直接跟其它控件一样添加菜单就行了. 不过这个版本已经取消了默认菜单,所有的菜单功能都得自己去实现.
- Node.js模板引擎学习----ejs
环境:windows+node.js+express 一.安装ejs 打开cmd窗口,输入npm install ejs -g,等待下载安装完成. 二.使用 调用过程中使用路由机制和模板,路由请求地址 ...
- FastMM、FastCode、FastMove的使用(详细讲解了怎么安装与使用)good
http://blog.csdn.net/akof1314/article/details/6524767
- RtlAdjustPrivilege进程提权,权限ID对照表
SeCreateTokenPrivilege 0x2 SeAssignPrimaryTokenPrivilege 0x3 SeLockMemoryPrivilege ...
- 我们检测到您的浏览器不兼容传输层安全协议 (TLS) 1.1 或更高版本,此协议在 Internet 上用于确保您通信的安全性。
早上使用.Net WebClient类采集亚马逊数据,返回http 400 Bad Request错误,内容里面有“我们检测到您的浏览器不兼容传输层安全协议 (TLS) 1.1 或更高版本,此协议在 ...
- VC控件自绘制三步曲
http://blog.csdn.net/lijie45655/article/details/6362441 实现自定义绘制的三步曲 既然您已经了解了绘制控件可用的各种选项(包括使用自定义绘制的好处 ...