1、添加表

GO

IF NOT EXISTS(SELECT * FROM sys.tables WHERE name='table_name')

BEGIN

CREATE TABLE [dbo].[table_name]()

END

GO

2、添加列

1)IF NOT EXISTS(SELECT * FROM sys.columns WHERE object_id = OBJECT_ID('table_name') AND name = 'column_name')

AND EXISTS(SELECT * FROM sys.tables WHERE object_id = OBJECT_ID('table_name'))

BEGIN

ALTER TABLE table_name ADD column_name column_type

END

2) GO

IF(NOT EXISTS(SELECT * FROM sys.columns s WHERE s.name = 'column_name' AND s.id = OBJECT_ID('table_name')))

ALTER TABLE table_name ADD column_name column_type

GO

3、删除列

GO

IF EXISTS(SELECT * FROM sys.columns WHERE object_id = OBJECT_ID('table_name') AND name = 'column_name')

BEGIN

ALTER TABLE table_name DROP COLUMN column_name

END

GO

4、表字段改名

GO

IF EXISTS (SELECT 1 FROM sys.columns WHERE [object_id] = OBJECT_ID('table_name') AND [name] = 'old_column_name')

BEGIN

EXEC sys.sp_rename @objname = 'table_name.old_column_name' @newname = 'new_column_name' @objtype = 'COLUMN'

END

GO

5、创建视图

IF EXISTS ( SELECT *

FROM sys.views

WHERE object_id = OBJECT_ID(N'[dbo].[VIEW_NAME]'))

DROP VIEW [dbo].[VIEW_NAME]

GO

CREATE VIEW [dbo].[VIEW_NAME]

AS

SELECT A.xx,

B.xx,

C.xx

FROM TABLE_A A

LEFT JOIN TABLE_B B ON B.xx = A.xx

LEFT JOIN TABLE_C C ON C.xx = A.xx

WHERE a.xx = xx

GO

6、创建函数

GO

IF OBJECT_ID(N'FUNCTION_NAME') IS NOT NULL

DROP FUNCTION FUNCTION_NAME

GO

CREATE FUNCTION [dbo].[FUNCTION_NAME] (@parameterIn parametertype)

RETURNS Returntype  --例如:RETURNS NVARCHAR(500)

AS

BEGIN

DECLARE @parameter parametertype

SET @parameter = (SELECT COLUMN FROM TABLE WHERE COLUMN = @parameterIn)

RETURN @parameter

END

GO

调用函数 SELECT [dbo].[FUNCTION_NAME] (parameterIn)

7、修改字段的类型

GO

IF EXISTS (SELECT 1 FROM sys.columns WHERE [object_id] = OBJECT_ID('table_name') AND [name] = 'column_name')

BEGIN

ALTER TABLE table_name ALTER COLUMN column_name type

END

GO

[SQL Server] 常用sql脚本的更多相关文章

  1. SQL Server常用SQL集合

    ================================================ 1.SQL查询一年之内的数据记录 select * from 表名 where CreateDate& ...

  2. SQL Server 常用SQL

    --查询所有表 select * from sysobjects where xtype='u' ORDER BY name ASC

  3. sql server 常用sql语句

    --删除约束 alter table productInfo drop constraint 约束名称 --删除列alter table productInfo drop column 列名 --添加 ...

  4. sql server 常用的系统存储过程

      系统存储过程 说明 sp_databases 列出服务上的所有数据库 sp_helpdb 报告有关指定数据库或所有数据库的信息 sp_renamedb 更改数据库的名称 sp_tables 返回当 ...

  5. sql server编写通用脚本自动统计各表数据量心得

    工作过程中,如果一个数据库的表比较多,手工编写统计脚本就会比较繁琐,于是摸索出自动生成各表统计数据量脚本的通用方法,直接上代码: /* 脚本来源:https://www.cnblogs.com/zha ...

  6. SQL SERVER常用语法记录

    用于记录SQL SERVER常用语法,以及内置函数. 以下语句包含: WITH 临时表语法 ROW_NUMBER()内置函数,我一般主要是用来分页.针对于查出来的所有数据做一个数字排序 分页的BETW ...

  7. SQL SERVER常用语法汇总

    阅读目录 一.SQL分类 二.基础语句 三.sql技巧 四.(MS SQL Server)SQL语句导入导出大全 回到目录 一.SQL分类 DDL—数据定义语言(CREATE,ALTER,DROP,D ...

  8. sql server常用性能计数器

    https://blog.csdn.net/kk185800961/article/details/52462913?utm_source=blogxgwz5 https://blog.csdn.ne ...

  9. SQL Server经典sql语句大全(转)

    一.基础1.说明:创建数据库CREATE DATABASE database-name2.说明:删除数据库drop database dbname3.说明:备份sql server--- 创建 备份数 ...

随机推荐

  1. 【详细】【转】C#中理解委托和事件 事件的本质其实就是委托 RabbitMQ英汉互翼(一),RabbitMQ, RabbitMQ教程, RabbitMQ入门

    [详细][转]C#中理解委托和事件   文章是很基础,但很实用,看了这篇文章,让我一下回到了2016年刚刚学委托的时候,故转之! 1.委托 委托类似于C++中的函数指针(一个指向内存位置的指针).委托 ...

  2. 关于Android中的四大组件(Service的开启与关闭)

    前言 服务(Service)是Android系统中的四大组件之中的一个.服务主要用于两个目的:后台执行和跨进程訪问. 通过启动 一个服务.能够在不显示界面的前提下在后台执行指定的任务,这样能够不影响用 ...

  3. LeetCode 168. Excel Sheet Column Title (Excel 表格列名称)

    Given a positive integer, return its corresponding column title as appear in an Excel sheet. For exa ...

  4. linux替换目录下所有文件中的某字符串

    linux替换目录下所有文件中的某字符串 比如,要将目录/modules下面所有文件中的zhangsan都修改成lisi,这样做: sed -i "s/zhangsan/lisi/g&quo ...

  5. idea2016的使用心得 --- 太棒了

    今天打开myeclipse感觉里面全是project,也懒着换地方了,因为这些代码还要时常看,索性安装了idea试试水,感觉还不错,用起来并不比myeclipse差,跟webstorm差不多,他俩就是 ...

  6. [Codeforces 485F] Oppa Funcan Style Remastered

    [题目链接] https://codeforces.com/contest/986/problem/F [算法] 不难发现 , 每个人都在且仅在一个简单环中 , 设这些环长的长度分别为 A1, A2 ...

  7. POJ 3264 Balanced Lineup 区间最值

    POJ3264 比较裸的区间最值问题.用线段树或者ST表都可以.此处我们用ST表解决. ST表建表方法采用动态规划的方法, ST[I][J]表示数组从第I位到第 I+2^J-1 位的最值,用二分的思想 ...

  8. DStream 转换操作----无状态转换

    DStream转换操作包括无状态转换和有状态转换. 无状态转换:每个批次的处理不依赖于之前批次的数据. 有状态转换:当前批次的处理需要使用之前批次的数据或者中间结果.有状态转换包括基于滑动窗口的转换和 ...

  9. Flume Netcat Source

    1.cd /usr/local2/flume/conf sudo vim netcat.conf # Name the components on this agent a1.sources = r1 ...

  10. Grunt环境搭建及使用

    jQuery在使用grunt,bootstrap在使用grunt,百度UEditor在使用grunt,你没有理由不学.不用! 1. 前言 各位web前端开发人员,如果你现在还不知道grunt或者听说过 ...