[SQL Server] 常用sql脚本
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脚本的更多相关文章
- SQL Server常用SQL集合
================================================ 1.SQL查询一年之内的数据记录 select * from 表名 where CreateDate& ...
- SQL Server 常用SQL
--查询所有表 select * from sysobjects where xtype='u' ORDER BY name ASC
- sql server 常用sql语句
--删除约束 alter table productInfo drop constraint 约束名称 --删除列alter table productInfo drop column 列名 --添加 ...
- sql server 常用的系统存储过程
系统存储过程 说明 sp_databases 列出服务上的所有数据库 sp_helpdb 报告有关指定数据库或所有数据库的信息 sp_renamedb 更改数据库的名称 sp_tables 返回当 ...
- sql server编写通用脚本自动统计各表数据量心得
工作过程中,如果一个数据库的表比较多,手工编写统计脚本就会比较繁琐,于是摸索出自动生成各表统计数据量脚本的通用方法,直接上代码: /* 脚本来源:https://www.cnblogs.com/zha ...
- SQL SERVER常用语法记录
用于记录SQL SERVER常用语法,以及内置函数. 以下语句包含: WITH 临时表语法 ROW_NUMBER()内置函数,我一般主要是用来分页.针对于查出来的所有数据做一个数字排序 分页的BETW ...
- SQL SERVER常用语法汇总
阅读目录 一.SQL分类 二.基础语句 三.sql技巧 四.(MS SQL Server)SQL语句导入导出大全 回到目录 一.SQL分类 DDL—数据定义语言(CREATE,ALTER,DROP,D ...
- sql server常用性能计数器
https://blog.csdn.net/kk185800961/article/details/52462913?utm_source=blogxgwz5 https://blog.csdn.ne ...
- SQL Server经典sql语句大全(转)
一.基础1.说明:创建数据库CREATE DATABASE database-name2.说明:删除数据库drop database dbname3.说明:备份sql server--- 创建 备份数 ...
随机推荐
- POJ 3468 A Simple Problem with Integers(线段树区间更新)
题目地址:POJ 3468 打了个篮球回来果然神经有点冲动. . 无脑的狂交了8次WA..竟然是更新的时候把r-l写成了l-r... 这题就是区间更新裸题. 区间更新就是加一个lazy标记,延迟标记, ...
- Boost Asioserver使用
今天主要想说道说道boost里面的网络通信库怎样设计和使用,由于近期一直在和网络一起工作,大数据处理和机器学习都离不开最后使用网络进行上线部署.先看看所有的源码吧. #include <cstd ...
- HDOJ 题目2475 Box(link cut tree去点找祖先)
Box Time Limit: 10000/5000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total Submi ...
- bzoj2131: 免费的馅饼
首先我们很容易看出是一个DP 然后容易看出是数据结构优化DP 但是这个限制条件有点鬼畜: abs(p[i]-p[j])/2<=(t[i]-t[j]) p[i]>p[j] -> t[i ...
- 46. Ext中namespace的作用(转)
转自:https://www.cnblogs.com/givemeanorange/p/5569954.html Ext中在每一个页面中添加一个namespace呢,就像下面的代码: // creat ...
- 【WIP】Bootstrap 基础
创建: 2017/09/28 更新: 2017/10/14 标题加上[WIP]
- Gym - 101208C 2013 ACM-ICPC World Finals C.Surely You Congest 最大流+最短路
题面 题意:给你n(2w5)个点,m条边(7w5)有k(1e3)辆车停在某些点上的,然后他们都想尽快去1号点,同时出发,同一个点不允许同时经过, 如果多辆车同时到达一个点,他们就会堵塞,这时候只能选择 ...
- jquery中对于为一组标签赋予点击事件
可以用each,但是each不能对动态的元素进行事件的绑定, 不过,其实也很简单,只需要获取所有的标签集,然后用动态绑定的方法,比如live进行绑定就可以了. 有时候,其实不难,只是自己想的太过复杂. ...
- mysql索引的操作
一.创建和查看普通索引 这是最基本的索引类型,而且它没有唯一性之类的限制 1.创建表时创建普通索引 CREATE TABLE table_name( 属性名 数据类型, ... 属性名 数据类型, I ...
- Elasticsearch之CURL命令的HEAD
如果只想检查一些文档是否存在,我们可以使用HEAD来替代GET方法,这样就只会返回HTTP头文件. [hadoop@master elasticsearch-]$ curl -i XHEAD http ...