SQL Server基础SQL脚本之主外键约束

概要


本系列,几乎都是代码,记得当时写的时候用的是微软的官方实例数据库AdventureWorks_Data.mdf、AdventureWorks_Log.ldf来运行的。

下载链接:链接: https://pan.baidu.com/s/1pMdLz6N 密码: xvhu

或者回复“AdventureWorks”来获取链接。

代码我就放在文中了。

if exists(select * from sys.databases where name='SchDB')
drop database SchDB
create database SchDB on primary
(name='S_DB',filename='D:\S_DB.mdf',size=5mb,maxsize=100mb,filegrowth=10%),
(name='S_DB_N_1',filename='D:\S_DB_N_1.ndf',size=1mb,maxsize=50mb,filegrowth=1mb),
(name='S_DB_N_2',filename='D:\S_DB_N_2.ndf',size=1mb,maxsize=50mb,filegrowth=1mb),
filegroup XXX
(name='S_DB_N_3',filename='D:\S_DB_N_3.ndf',size=1mb,maxsize=50mb,filegrowth=1mb),
(name='S_DB_N_4',filename='D:\S_DB_N_4.ndf',size=1mb,maxsize=50mb,filegrowth=1mb),
(name='S_DB_N_5',filename='D:\S_DB_N_5.ndf',size=1mb,maxsize=50mb,filegrowth=1mb)
go

alter database SchDB add filegroup YYY
go
alter database SchDb add file(
    name='S_DB_N_6',filename='D:\S_DB_N_6.ndf',
    size=1mb,maxsize=50mb,filegrowth=1mb
)to filegroup YYY
alter database SchDB modify filegroup YYY default
use SchDB
create table U3(
    id  int constraint PK_HAHA primary key,
    age int constraint CK_HAHA check(age in(20,70,80)) default 80
)
insert into U3 output inserted.* values(default)
insert into U3 output inserted.* values(30)
sp_renameDB 'SchDB','HEIHEI'
create schema XIXI
create table XIXI.U(
    id int foreign key(id) references U3(id)
)
create table Y(
    id  int  ,
    s_id int
constraint PK_id_s_id primary key(id,S_id)
)
--创建唯一约束
create table K1(name nvarchar(20) unique)
create table K3(
    id int not null,--如果是主键必须添加not null
    name nvarchar(20) constraint UQ_Name2 unique
)
--修改表创建约束
alter table K3 add constraint PK_id primary key(id)

create table a(--主表
aid int primary key
)
create table b(--从表
bid int foreign key(bid) references a(aid)
)
drop table b
drop table a

create table a1(
    aid int constraint PK_a primary key,
    age int check(age between 27 and 80),
    sex int check(sex in('M','F')),
    tel nvarchar(20) check(tel like'1[3,5,7,8][0-9][0-9][0-9][0-9][0-9][0-9][0-9]
        [0-9][0-9]')

)
create table b2(
    f nvarchar(10)
)

create rule R as @f  like 'Y%'
sp_bindrule 'R','b2.f'
insert into b2 values('you')
select * from b2
sp_unbindrule 'b2.f'
drop rule R

create type HAHA from int not null
create table F(hj    HAHA )
insert into F values(23)

create synonym HIHI for AdventureWorks.HumanResources.Department
    select * from HIHI

create partition function GG(int) as range left for values(30,70,90)
    create partition function JK(date) as range right for values('2001-09-09',
    '2003-06-09')

    ---------------------------------
if exists(select * from sys.databases where name='SchDB')
drop database SchDB
create database SchDB on primary
(name='S_DB',filename='D:\S_DB.mdf',size=5mb,maxsize=100mb,filegrowth=10%),
(name='S_DB_N_1',filename='D:\S_DB_N_1.ndf',size=1mb,maxsize=50mb,filegrowth=1mb),
(name='S_DB_N_2',filename='D:\S_DB_N_2.ndf',size=1mb,maxsize=50mb,filegrowth=1mb),
filegroup XXX
(name='S_DB_N_3',filename='D:\S_DB_N_3.ndf',size=1mb,maxsize=50mb,filegrowth=1mb),
(name='S_DB_N_4',filename='D:\S_DB_N_4.ndf',size=1mb,maxsize=50mb,filegrowth=1mb),
(name='S_DB_N_5',filename='D:\S_DB_N_5.ndf',size=1mb,maxsize=50mb,filegrowth=1mb)
go
alter database HEIHEI add filegroup FG_New
alter database HEIHEI add file(name='S_DB_N_7',filename='D:\S_DB_N_7.ndf')to 
filegroup FG_New
alter partition scheme SC next used FG_New
alter partition function GG() split range(90)

原文发布于微信公众号 - 数据库SQL(SQLdba)

原文发表时间:2018-02-03

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏Java3y

多线程三分钟就可以入个门了!

25111
来自专栏王小雷

用windows浏览器打开Linux的Jupyter notebook开发、调试示例

1.场景,在windows浏览器中打开Linux环境下的jupyter notebook。Jupyter notebook开启远程服务,Spark、python...

2176
来自专栏一名合格java开发的自我修养

Spark2.1集群安装(standalone模式)

  上传spark-2.1.0-bin-hadoop2.6.tgz安装包到Linux(intsmaze-131)上

1042
来自专栏祝威廉

如何用MLSQL快速调试Structured Streaming程序

早上对Structured Streaming 的window函数, Output Mode 以及Watermark有些疑惑的地方。Structured Str...

841
来自专栏Spark学习技巧

Kafka源码系列之0.10版本的Producer源码解析及性能点讲解

一,基础讲解 本文是基于kafka 0.10讲的,kafkaProducer模型和0.8的客户端模型大致是一样的,区别是0.8版本的会为每个Broker(有给定...

2339
来自专栏LanceToBigData

Hadoop(六)之HDFS的存储原理(运行原理)

前言   其实说到HDFS的存储原理,无非就是读操作和写操作,那接下来我们详细的看一下HDFS是怎么实现读写操作的! 一、HDFS读取过程 ?   1)客户端通...

2805
来自专栏企鹅号快讯

高并发分布式——主节点选举

1. 概述 本文主要分享 Elastic-Job-Lite 主节点选举。 涉及到主要类的类图如下: ? . 2. 为什么需要选举主节点 首先我们来看一段官方对 ...

2369
来自专栏Java后端技术

解决Java程序连接mysql数据库出现CommunicationsException: Communications link failure错误的问题

  最近在家里捣鼓一个公司自己搭建的demo的时候,发现程序一启动就会出现CommunicationsException: Communications lin...

1181
来自专栏walterlv - 吕毅的博客

如何在 .NET 库的代码中判断当前程序运行在 Debug 下还是 Release 下

发布于 2018-07-05 11:39 更新于 2018-09...

481
来自专栏大内老A

如何让ASP.NET默认的资源编程方式支持非.ResX资源存储

之前写了两篇文章《.NET资源并不限于.ResX文件》(上篇、下篇),介绍了如何通过自定义ResourceManager的方式来扩展资源的存储形式。在那篇文章中...

1968

扫码关注云+社区