transact sql mysql_Sql Server数据库常用Transact-SQL脚本(推荐)
Transact-SQL
Transact-SQL(又称 T-SQL),是在 Microsoft SQL Server 和 Sybase SQL Server 上的 ANSI SQL 实现,与 Oracle 的 PL/SQL 性质相近(不只是实现 ANSI SQL,也为自身数据库系统的特性提供实现支持),在 Microsoft SQL Server 和 Sybase Adaptive Server 中仍然被使用为核心的查询语言。
数据库
1、创建数据库
USE master ;
GO
CREATE DATABASE Sales
ON
( NAME = Sales_dat,
FILENAME = 'C:\Program Files\Microsoft SQL Server\MSSQL13.MSSQLSERVER\MSSQL\DATA\saledat.mdf',
SIZE = 10,
MAXSIZE = 50,
FILEGROWTH = 5 )
LOG ON
( NAME = Sales_log,
FILENAME = 'C:\Program Files\Microsoft SQL Server\MSSQL13.MSSQLSERVER\MSSQL\DATA\salelog.ldf',
SIZE = 5MB,
MAXSIZE = 25MB,
FILEGROWTH = 5MB ) ;
GO
2、查看数据库
SELECT name, database_id, create_date
FROM sys.databases ;
3、删除数据库
DROP DATABASE Sales;
表
1、创建表
CREATE TABLE PurchaseOrderDetail
(
ID uniqueidentifier NOT NULL
,LineNumber smallint NOT NULL
,ProductID int NULL
,UnitPrice money NULL
,OrderQty smallint NULL
,ReceivedQty float NULL
,RejectedQty float NULL
,DueDate datetime NULL
);
2、删除表
DROP TABLE dbo.PurchaseOrderDetail;
3、重命名表
EXEC sp_rename 'Sales.SalesTerritory', 'SalesTerr';
列
1、添加列
ALTER TABLE dbo.doc_exa ADD column_b VARCHAR(20) NULL, column_c INT NULL ;
2、删除列
ALTER TABLE dbo.doc_exb DROP COLUMN column_b;
3、重命名列
EXEC sp_rename 'Sales.SalesTerritory.TerritoryID', 'TerrID', 'COLUMN';
约束
1、主键
--在现有表中创建主键
ALTER TABLE Production.TransactionHistoryArchive
ADD CONSTRAINT PK_TransactionHistoryArchive_TransactionID PRIMARY KEY CLUSTERED (TransactionID);
--在新表中创建主键
CREATE TABLE Production.TransactionHistoryArchive1
(
TransactionID int IDENTITY (1,1) NOT NULL
, CONSTRAINT PK_TransactionHistoryArchive_TransactionID PRIMARY KEY CLUSTERED (TransactionID)
)
;
--查看主键
SELECT name
FROM sys.key_constraints
WHERE type = 'PK' AND OBJECT_NAME(parent_object_id) = N'TransactionHistoryArchive';
GO
--删除主键
ALTER TABLE Production.TransactionHistoryArchive
DROP CONSTRAINT PK_TransactionHistoryArchive_TransactionID;
GO
视图
1、创建视图
CREATE VIEW V_EmployeeHireDate
AS
SELECT p.FirstName, p.LastName, e.HireDate
FROM HumanResources.Employee AS e JOIN Person.Person AS p
ON e.BusinessEntityID = p.BusinessEntityID ;
GO
2、删除视图
DROP VIEW V_EmployeeHireDate;
存储过程
1、创建存储过程
CREATE PROCEDURE P_UspGetEmployeesTest
@LastName nvarchar(50),
@FirstName nvarchar(50)
AS
SELECT FirstName, LastName, Department
FROM HumanResources.vEmployeeDepartmentHistory
WHERE FirstName = @FirstName AND LastName = @LastName
AND EndDate IS NULL;
GO
2、删除存储过程
DROP PROCEDURE P_UspGetEmployeesTest;
3、执行存储过程
EXEC P_UspGetEmployeesTest N'Ackerman', N'Pilar';
-- Or
EXEC P_UspGetEmployeesTest @LastName = N'Ackerman', @FirstName = N'Pilar';
GO
-- Or
EXECUTE P_UspGetEmployeesTest @FirstName = N'Pilar', @LastName = N'Ackerman';
GO
4、重命名存储过程
EXEC sp_rename 'P_UspGetAllEmployeesTest', 'P_UspEveryEmployeeTest2';
5、带有输出参数的存储过程
CREATE PROCEDURE P_UspGetEmployeeSalesYTD
@SalesPerson nvarchar(50),
@SalesYTD money OUTPUT
AS
SELECT @SalesYTD = SalesYTD
FROM SalesPerson AS sp
JOIN vEmployee AS e ON e.BusinessEntityID = sp.BusinessEntityID
WHERE LastName = @SalesPerson;
RETURN
GO
--调用
DECLARE @SalesYTDBySalesPerson money;
EXECUTE P_UspGetEmployeeSalesYTD
N'Blythe',
@SalesYTD = @SalesYTDBySalesPerson OUTPUT;
GO
数据类型
总结
以上所述是小编给大家介绍的Sql Server数据库常用Transact-SQL脚本,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!
transact sql mysql_Sql Server数据库常用Transact-SQL脚本(推荐)相关推荐
- 利用Navicat Premium将SQL Server数据库转为My SQL数据库(解决Mac无法打开SQL Server 脚本文件的方法)
利用Navicat Premium将SQL Server数据库转为My SQL数据库(解决Mac无法打开SQL Server 脚本文件的方法) 安装好Navicat Premium,SQL Serve ...
- 怎么从 SQL Server 数据库中导出 SQL 语句?
同于直接/备份/恢复 或者 导入/导出 数据库操作. 新版本SQL Server客户端中还可以生成相对应的SQL语句. 非常方便与查看和与其他人共享. 操作步骤如下: 连接上数据库后, 右击数据库, ...
- Oracle数据库常用基本SQL语法
标题 Oracle数据库常用基本SQL语法 1.表的创建.插入,删除及Oracle和mysql的数据类型的区别 create table item (item_id number(5) primary ...
- 学习sql注入:猜测数据库_学习SQL:SQL数据类型
学习sql注入:猜测数据库 What are SQL data types, why do we need them, and how to use them? Today, we'll try to ...
- SQL server数据库常用代码大全
SQL 语句目录 插入数据表数据 INSERT INTO 测试表(商品ID,商品名称,规格,型号,属性,分类,价格) VALUES ('SP0009','安宫牛黄丸','10粒/盒','A-1245' ...
- sql server快照复制mysql_SQL SERVER 数据库表同步复制 笔记
SyncNavigator是一款功能强大的数据库同步软件,适用于SQL SERVER, MySQL,具有自动/定时同步数据.无人值守.故障自动恢复.同构/异构数据库同步.断点续传和增量同步等功能,支持 ...
- SQL server数据库与My sql数据库的区别?
在我们生活中无时无刻不需要使用到数据库,网络爬虫等一系列用处,那数据库到底是什么呢?我们一起接着往下看 数据库是存放数据的仓库.存储空间很大,可千万条.上亿条数据.但是数据库并不是随意地将数据进行存放 ...
- SQL Server数据库中使用sql脚本删除指定表的列
在SQL Server数据库中删除某一列,使用数据库管理工具直接可视化操作是很简单的,但是如果要用sql脚本呢?可能你会说很简单,直接用 ALTER TABLE [要删除的字段所在的表名] DROP ...
- python3连接sql server数据库_Python3操作SQL Server数据库(实例讲解)
1.前言 前面学完了SQL Server的基本语法,接下来学习如何在程序中使用sql,毕竟不能在程序中使用的话,实用性就不那么大了. 2.最基本的SQL查询语句 python是使用pymssql这个模 ...
最新文章
- python解释器环境中、用于表示上一次_大工20秋《数据挖掘》在线作业3 【标准答案】...
- monocross 环境搭建:MonoTouch Mono for Android
- springmvc九:spring mvc 简单介绍
- MySQL设置默认引擎和字符集
- 办公:Office快捷键之王,这个键应该没人不服!
- Java后端学习体系(韩顺平)
- php 循环table,php table循环 问题很简单 求帮助
- 删除linux系统中的eth0.bak与多余的网卡
- OpenCV2简单的特征匹配
- python习题练习(chapater 5 -- python核心编程)
- 港台服冒险岛枫之谷传统登录方式密码解密及自动登录方式
- appium inspector连接appium service
- jQuery创建表格
- java entries_Enumerationlt;? extends ZipEntrygt; entries()_学习Java Zip|WIKI教程
- 一张照片就能攻破人脸识别系统,人脸识别安全性亟需提高
- 将图片上传到FTP服务器
- RK3288 系统升级流程
- python配置文件
- openlayers中使用rBush(R树)来存放要素等信息,本文修改了一点其中的rbush源码中的demo,使用canvas画出了insert和delete操作(建立树和删除树中数据)
- Mysql数据库报错:Row size too large (> 8126). Changing some columns to TEXT or BLOB or using ROW_FORMAT=DY
热门文章
- Vue2.0源码解析 - 知其然知其所以然之Vue.use
- 「第二部:容器和微服务架构」(2) 容器化单体应用
- java 头像 微信群_Android仿微信群聊头像
- php找零页面,JS实现找零张数最小
- 花 30 美金请 AI 画家弄了个 logo,网友:画得非常好,下次别画了!
- 建立名字为Project1的解决方案
- html调用摄像头直播,html5调用摄像头功能的实现代码
- 时光机穿梭-管理修改
- android平台开发板外接罗技C525摄像头不支持扫码有什么办法解决
- btrace 开源!基于 Systrace 高性能 Trace 工具