• 企业400电话
  • 微网小程序
  • AI电话机器人
  • 电商代运营
  • 全 部 栏 目

    企业400电话 网络优化推广 AI电话机器人 呼叫中心 网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    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脚本,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

    您可能感兴趣的文章:
    • mysql报错:Deadlock found when trying to get lock; try restarting transaction的解决方法
    • c#中SqlTransaction——事务详解
    • mysql Non-Transactional Database Only(只支持MyISAM)
    • 浅谈Transact-SQL
    • MySQL数据库事务隔离级别介绍(Transaction Isolation Level)
    • Transact_SQL 小手册
    上一篇:详解SQL Server 中 JSON_MODIFY 的使用
    下一篇:SQL SERVER中SELECT和SET赋值相同点与不同点(推荐)
  • 相关文章
  • 

    © 2016-2020 巨人网络通讯 版权所有

    《增值电信业务经营许可证》 苏ICP备15040257号-8

    Sql Server数据库常用Transact-SQL脚本(推荐) Sql,Server,数据库,常用,Transact-SQL,