SQL SERVER 那点事
温故而知新
一.创建数据库
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 那点事的更多相关文章
- 【转贴】SQL Server中关于跟踪(Trace)那点事
SQL Server中关于跟踪(Trace)那点事 https://www.cnblogs.com/zhijianliutang/p/4113911.html 作者很牛B.. 前言 一提到跟踪俩字,很 ...
- SQL Server自动化运维系列——关于邮件通知那点事(.Net开发人员的福利)
需求描述 在我们的生产环境中,大部分情况下需要有自己的运维体制,包括自己健康状态的检测等.如果发生异常,需要提前预警的,通知形式一般为发邮件告知. 邮件作为一种非常便利的预警实现方式,在及时性和易用性 ...
- SQL Server中关于跟踪(Trace)那点事
前言 一提到跟踪俩字,很多人想到警匪片中的场景,同样在我们的SQL Server数据库中“跟踪”也是无处不在的,如果我们利用好了跟踪技巧,就可以针对某些特定的场景做定向分析,找出充足的证据来破案. 简 ...
- 【转】SQL Server中关于跟踪(Trace)那点事
前言 一提到跟踪俩字,很多人想到警匪片中的场景,同样在我们的SQL Server数据库中“跟踪”也是无处不在的,如果我们利用好了跟踪技巧,就可以针对某些特定的场景做定向分析,找出充足的证据来破案. 简 ...
- SQL Server 文件自动增长那些事
方法 1. 把文件的增长设置为按照固定大小增长. 如filegrowth = 100MB; ------------------------------------------------------ ...
- SQL Server中关于跟踪(Trace)那点事(转载)
前言 一提到跟踪俩字,很多人想到警匪片中的场景,同样在我们的SQL Server数据库中“跟踪”也是无处不在的,如果我们利用好了跟踪技巧,就可以针对某些特定的场景做定向分析,找出充足的证据来破案. 简 ...
- SQL SERVER 无法正常连接的那些事
1.确保sqlserver服务正常运行. >一般可以从两个地方控制服务,一是系统自带的服务管理器,最快捷的方式是运行“services.msc”,二是使用sqlserver自带的“SQL Ser ...
- ASP.NET Core 中文文档 第二章 指南(4.5)使用 SQL Server LocalDB
原文:Working with SQL Server LocalDB 作者:Rick Anderson 翻译: 魏美娟(初见) 校对: 孟帅洋(书缘).张硕(Apple).许登洋(Seay) Appl ...
- Unity3d连接SQL Server数据库出现SocketException: 使用了与请求的协议不兼容的地址错误
这两天,同学问我Unity3d连接SQL Server的问题,当时我只是简单的说:“应该一样吧,就是那简单的几句啊”.之后他让我试了下,我才发现有问题了.故此写下一篇博客,要牢记这件事的教训,操作数据 ...
随机推荐
- dirname,basename的用法与用途
#dirname介绍 当对文件使用dirname时,返回文件的上级目录,输出是否是绝对路径取决于输入的文件名是绝对路径 如果对目录使用,则返回上级目录 basename命令与dirname相反,读取文 ...
- 数据分析之上篇---numpy模块
目录 一.简介 二.ndarray -多维数组对象 1.为什么要是用ndarray? 2.创建ndarray对象 3.ndarray多维数组创建 4.常用属性 5.数据类型 6.ndarray 数组创 ...
- HDU 4325 Flowers 树状数组+离散化
Flowers Problem Description As is known to all, the blooming time and duration varies between differ ...
- Kaggle竞赛入门:决策树算法的Python实现
本文翻译自kaggle learn,也就是kaggle官方最快入门kaggle竞赛的教程,强调python编程实践和数学思想(而没有涉及数学细节),笔者在不影响算法和程序理解的基础上删除了一些不必要的 ...
- jQuery操作DOM的相关方法
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8 ...
- coding++:事务管理 隔离级别
在声明事务时,只需要通过value属性指定配置的事务管理器名即可,例如:@Transactional(value="transactionManagerPrimary"). 除了指 ...
- 并查集例题01. 种类并查集(poj1733)
题目: http://poj.org/problem?id=1733 题意: 输入n表示有一个长度为n的0,1字符串, m表示接下来有m行输入, 接下来的m行输入中x, y, even表示第x到第y个 ...
- C 送外卖
时间限制 : - MS 空间限制 : 365536 KB 评测说明 : 时限1000ms 问题描述 暑期期间,何老板闲来无事,于是买了辆摩托车,签约某团外卖,跑起来送外卖的业务. 何老板负责的 ...
- A - 你能数的清吗 51Nod - 1770(找规律)
A - 你能数的清吗 51Nod - 1770(找规律) 演演是个厉害的数学家,他最近又迷上了数字谜.... 他很好奇 xxx...xxx(n个x)*y 的答案中 有多少个z,x,y,z均为位数只有一 ...
- centos8系统下docker安装jenkins
前提是已经安装好docker 1.下载jenkins(最新版本) docker pull jenkins/jenkins 2.创建用于存放jenkins的文件夹 mkdir /home/var/jen ...