温故而知新

一.创建数据库

USE MASTER;

GO

IF EXISTS(SELECT *
FROM sys.databases
WHERE [name] = 'student')
BEGIN
ALTER DATABASE student SET SINGLE_USER WITH ROLLBACK IMMEDIATE IF Db_id('student') IS NOT NULL
DROP DATABASE student
END
ELSE
BEGIN
CREATE DATABASE student ON PRIMARY ( NAME=N'student', FILENAME=N'D:\ApplicationData\SQLSERVER\student.mdf', SIZE=5MB, MAXSIZE=UNLIMITED, FILEGROWTH=15% ) LOG ON ( NAME=N'student_log', FILENAME=N'D:\ApplicationData\SQLSERVER\student_log.mdf', SIZE=2MB, MAXSIZE=20MB, FILEGROWTH=1MB ) WITH CATALOG_COLLATION = DATABASE_DEFAULT
END GO

二.创建表

USE student;
GO
IF EXISTS(SELECT *
FROM sys.objects
WHERE [name] = 'studentInfo')
BEGIN
DROP TABLE studentInfo;
END
GO
CREATE TABLE studentInfo
(
stuId INT PRIMARY KEY IDENTITY(1, 1),
stuName NVARCHAR(20) NOT NULL,
stuPhone NVARCHAR(15) UNIQUE,
stuSex NVARCHAR(2) CHECK(stuSex='男' OR stuSex='女'),
stuAddress NVARCHAR(50) DEFAULT('China') )
GO

三.创建存储过程

IF EXISTS(SELECT * FROM sys.procedures WHERE [name]='procedure_name')
BEGIN
DROP PROCEDURE [procedure_name]
END
GO
CREATE PROCEDURE [procedure_name]
AS
BEGIN
INSERT studentInfo(stuName,stuPhone,stuSex) VALUES('Robin',110,'男');
UPDATE studentInfo SET stuPhone='' WHERE stuName='Robin';
END
GO

四.创建视图

USE student;
GO
CREATE VIEW VIEW_NAME
AS
SELECT * FROM studentInfo;
GO

五.创建索引

USE student

GO

IF EXISTS(SELECT *
FROM sys.indexes
WHERE [name] = 'INDEX_NAME')
DROP INDEX INDEX_NAME ON studentInfo CREATE NONCLUSTERED INDEX INDEX_NAME
ON studentInfo(stuName)
WITH FILLFACTOR=30 GO

六.创建触发器

IF EXISTS(SELECT *
FROM sys.triggers
WHERE name = 'TRIGGER_NAME')
DROP TRIGGER TRIGGER_NAME GO CREATE TRIGGER TRIGGER_NAME
ON studentInfo
FOR DELETE
AS
BEGIN
PRINT '删除'
END

七.创建标量函数

USE student;

GO

IF EXISTS(SELECT *
FROM sys.objects
WHERE type = 'FN'
AND [name] = 'FUNCTION_NAME')
DROP FUNCTION dbo.FUNCTION_NAME GO CREATE FUNCTION dbo.Function_name (@stuId INT)
RETURNS INT
AS
BEGIN
DECLARE @COUNT INT SELECT @COUNT = Count(*)
FROM studentInfo RETURN @COUNT
END GO

八.创建表值函数

USE student;

GO

IF EXISTS(SELECT *
FROM sys.objects
WHERE type = 'IF'
AND [name] = 'FUNCTION_NAME')
DROP FUNCTION dbo.FUNCTION_NAME GO CREATE FUNCTION dbo.Fnuction_name (@stuId INT)
RETURNS TABLE
AS
RETURN
(SELECT *
FROM studentInfo) GO

九.声明游标

DECLARE @STUID INT
DECLARE STU_CURSOR CURSOR FOR
SELECT stuId
FROM studentInfo OPEN STU_CURSOR FETCH NEXT FROM STU_CURSOR INTO @STUID WHILE @@FETCH_STATUS = 0
BEGIN
UPDATE studentInfo
SET stuPhone = ''
WHERE stuId = @STUID PRINT @STUID FETCH NEXT FROM STU_CURSOR INTO @STUID
END CLOSE STU_CURID DEALLOCATE STU_CURSOR GO

SQL SERVER 那点事的更多相关文章

  1. 【转贴】SQL Server中关于跟踪(Trace)那点事

    SQL Server中关于跟踪(Trace)那点事 https://www.cnblogs.com/zhijianliutang/p/4113911.html 作者很牛B.. 前言 一提到跟踪俩字,很 ...

  2. SQL Server自动化运维系列——关于邮件通知那点事(.Net开发人员的福利)

    需求描述 在我们的生产环境中,大部分情况下需要有自己的运维体制,包括自己健康状态的检测等.如果发生异常,需要提前预警的,通知形式一般为发邮件告知. 邮件作为一种非常便利的预警实现方式,在及时性和易用性 ...

  3. SQL Server中关于跟踪(Trace)那点事

    前言 一提到跟踪俩字,很多人想到警匪片中的场景,同样在我们的SQL Server数据库中“跟踪”也是无处不在的,如果我们利用好了跟踪技巧,就可以针对某些特定的场景做定向分析,找出充足的证据来破案. 简 ...

  4. 【转】SQL Server中关于跟踪(Trace)那点事

    前言 一提到跟踪俩字,很多人想到警匪片中的场景,同样在我们的SQL Server数据库中“跟踪”也是无处不在的,如果我们利用好了跟踪技巧,就可以针对某些特定的场景做定向分析,找出充足的证据来破案. 简 ...

  5. SQL Server 文件自动增长那些事

    方法 1. 把文件的增长设置为按照固定大小增长. 如filegrowth = 100MB; ------------------------------------------------------ ...

  6. SQL Server中关于跟踪(Trace)那点事(转载)

    前言 一提到跟踪俩字,很多人想到警匪片中的场景,同样在我们的SQL Server数据库中“跟踪”也是无处不在的,如果我们利用好了跟踪技巧,就可以针对某些特定的场景做定向分析,找出充足的证据来破案. 简 ...

  7. SQL SERVER 无法正常连接的那些事

    1.确保sqlserver服务正常运行. >一般可以从两个地方控制服务,一是系统自带的服务管理器,最快捷的方式是运行“services.msc”,二是使用sqlserver自带的“SQL Ser ...

  8. ASP.NET Core 中文文档 第二章 指南(4.5)使用 SQL Server LocalDB

    原文:Working with SQL Server LocalDB 作者:Rick Anderson 翻译: 魏美娟(初见) 校对: 孟帅洋(书缘).张硕(Apple).许登洋(Seay) Appl ...

  9. Unity3d连接SQL Server数据库出现SocketException: 使用了与请求的协议不兼容的地址错误

    这两天,同学问我Unity3d连接SQL Server的问题,当时我只是简单的说:“应该一样吧,就是那简单的几句啊”.之后他让我试了下,我才发现有问题了.故此写下一篇博客,要牢记这件事的教训,操作数据 ...

随机推荐

  1. Linux基础篇学习——Linux文件系统之文件存储与读取:inode,block,superblock

    Linux文件类型 代表符号 含义 - 常规文件,即file d directory,目录文件 b block device,块设备文件,支持以"block"为单位进行随机访问 c ...

  2. 正则表达式(R&Python)

    regular expression 1.R,strongly recommend this blog The table_info examples are following: du_mtime_ ...

  3. .NET Core中创建和使用NuGet包

    在.NET Core的项目中,如果我们要在项目中引用其它DLL文件,不应该直接在项目引用中添加DLL文件(虽然在.NET Core项目中也可以这么做),建议是去直接下载DLL文件所属的NuGet包.这 ...

  4. LightOJ - 1341 Aladdin and the Flying Carpet 唯一分解定理LightOJ 1220Mysterious Bacteria

    题意: ttt 组数据,第一个给定飞毯的面积为 sss,第二个是毯子的最短的边的长度大于等于这个数,毯子是矩形但不是正方形. 思路: 求出 sss 的所有因子,因为不可能是矩形,所以可以除以 222, ...

  5. Ali_Cloud++:阿里云服务器防火墙相关命令

    systemctl start firewalld ##启动Firewall systemctl stop firewalld ##关闭Firewall systemctl restart firew ...

  6. 《Mathematical Analysis of Algorithms》中有关“就地排列”(In Situ Permutation)的算法分析

    问题描述 把数列\((x_1,x_2,\cdots,x_n)\)变换顺序为\((x_{p(1)},x_{p(2)},\cdots,x_{p(n)})\),其中\(p\)是\(A=\{1,2,3,\cd ...

  7. c++中的多态机制

    目录 1  背景介绍 2  多态介绍 2-1  什么是多态 2-2  多态的分类 2-3  动态多态成立的条件 2-4  静态联编和动态联编 2-5  动态多态的实现原理    2-6   虚析构函数 ...

  8. elasticsearch报Fielddata is disabled on text fields by default

    我刚玩elk没几天,今天启动kibana之后执行查询看见elasticsearch报了一个错误 Caused by: java.lang.IllegalArgumentException: Field ...

  9. [codevs2597]团伙<并查集>

    题目描述 Description 1920年的芝加哥,出现了一群强盗.如果两个强盗遇上了,那么他们要么是朋友,要么是敌人.而且有一点是肯定的,就是: 我朋友的朋友是我的朋友: 我敌人的敌人也是我的朋友 ...

  10. springboot系列(三)配置文件详解

    目录 properties 文件 1.语法 2.优先级 3.自定义数据配置 4.获取自定义数据配置 1.通过prefix获取 yml文件 1.语法 2.优先级 3.自定义数据配置. 4.获取自定义数据 ...