sqlserver的学习成长之路,每一个技术的学习过程都是值得让人回味的,现在百度上关于sqlser的资料很多,但是都太杂,希望能为大家分享一点简单易懂的干货,跟大家一起进步学习。

一、建表

    1、创建表stu_paper(各种常用的类型的字段都有)

IF NOT EXISTS (SELECT * FROM SYSOBJECTS WHERE NAME = 'stu_paper' AND TYPE = 'U')
BEGIN
--问卷表
CREATE TABLE stu_paper(
P_ID int IDENTITY(,) primary key NOT NULL,
TITLE VARCHAR() default '' NOT NULL,
START_TIME datetime default getdate() NOT NULL,
SHOW_CONTENT int default NOT NULL,
USER_NUM bigint default NOT NULL,
FLAG int default NOT NULL ,
NTAG1 numeric(,),
)
END
GO

   2、创建表stu

IF NOT EXISTS (SELECT * FROM SYSOBJECTS WHERE NAME = 'stu' AND TYPE = 'U')
BEGIN
--问卷表
CREATE TABLE stu(
P_ID int IDENTITY(,) primary key NOT NULL,
TITLE VARCHAR() default '' NOT NULL,
START_TIME datetime default getdate() NOT NULL,
SHOW_CONTENT int default NOT NULL,
USER_NUM bigint default NOT NULL,
FLAG int default NOT NULL ,
NTAG1 numeric(,),
)
END
GO

二、为表stu_paper增加字段

 alter table dbo.stu_paper add age int default  not null;
alter table dbo.stu_paper add name VARCHAR() default '' not null;

三、修改表stu_paper中的字段name 的长度为varchar(256)

 alter table stu_paper  alter column name varchar();

四、存储过程

  1、创建存储过程,将将表stu_paper中数据同步到表stu中

 CREATE PROC [DBO].[PRO_STUPAPER]
AS
IF EXISTS(SELECT COUNT(*) FROM DBO.stu_paper)
BEGIN
DELETE FROM DBO.stu_paper;
INSERT INTO DBO.stu(TITLE,START_TIME,SHOW_CONTENT,USER_NUM,FLAG,NTAG1)
SELECT TITLE,START_TIME,SHOW_CONTENT,USER_NUM,FLAG,NTAG1 FROM DBO.stu_paper;
END
GO

  2、执行存储过程

 EXEC DBO.PRO_STUPAPER
GO

  3、通过创建存储过程建表

--创建建立3个表的存储过程
CREATE PROC [DBO].[CREATETABLE](@PITYPE TINYINT,@PIYM INT)
AS
--1-短信历史表;2-彩信历史表;3-短信上行历史表;
BEGIN
DECLARE @STR NVARCHAR(4000);
DECLARE @TABLENAME VARCHAR(16); IF @PITYPE=1
BEGIN
SET @TABLENAME='MTTASK'+CAST(@PIYM AS VARCHAR(6));
SET @STR='CREATE TABLE '+@TABLENAME+'(
ID BIGINT NOT NULL,
USERID VARCHAR(11) NOT NULL,
AREACODE INT NOT NULL DEFAULT ((0))
)'
END;
ELSE IF @PITYPE=2
BEGIN
SET @TABLENAME='MOTASK'+CAST(@PIYM AS VARCHAR(6));
SET @STR='CREATE TABLE '+@TABLENAME+'(
ID BIGINT NOT NULL,
MDAY INT NOT NULL,
AREACODE INT NOT NULL DEFAULT ((0))
)'
END;
ELSE
BEGIN
SET @TABLENAME='MRTASK'+CAST(@PIYM AS VARCHAR(6));
SET @STR='CREATE TABLE '+@TABLENAME+'(
ID BIGINT NOT NULL,
MDAY INT NOT NULL,
AREACODE INT NOT NULL DEFAULT ((0))
)'
END;
--动态执行sql语句
EXEC SP_EXECUTESQL @STR;
END;
--循环调用上面存储过程CREATETABLE
DECLARE @J INT,@SPTIME DATETIME,@PIYM VARCHAR(6),@PITYPE INT;
SET @J=0;
SET @SPTIME=GETDATE(); SET @J=0;
WHILE(@J < 48)
BEGIN
SET @PIYM=CONVERT(VARCHAR(6), DATEADD(MONTH,@J,GETDATE()), 112);
SET @PITYPE=1;
WHILE (@PITYPE<5)
BEGIN
BEGIN TRY
EXEC [DBO].[CREATETABLE] @PITYPE,@PIYM ;
END TRY
BEGIN CATCH
BREAK;
END CATCH
SET @PITYPE=@PITYPE+1;
END;
SET @J = @J+1;
END;
GO

五、sqlserver函数的运用  

  1、--2018-10-24 日期转换格式,获取日期前10位
     select CONVERT(VARCHAR(10),GETDATE(),120);

  2、--2018-12-24 14:17:36.230 当前日期增加两个月
           select DATEADD(MONTH,2,GETDATE());
      3、--哈哈哈   将变量显示转换为 varchar(10)类型
          SELECT CAST('哈哈哈' AS varchar(10))
  4、/**
     两者都可以执行动态sql
      sp_executesql 可以在动态 sql 中使用变量,并且将变量输出
      exec 则只能执行动态 sql 和 存储过程,也可以使用表变量,执行时需要加括号,唯一不足就是不可以输出变量
             */ 

CREATE PROC stu
as
BEGIN
DECLARE @STR NVARCHAR(4000);
SET @STR='select * from OT_WEI_TWCOUNT'
--执行sql语句
EXEC SP_EXECUTESQL @STR;
end; --执行该存储过程,进行查询 select * from OT_WEI_TWCOUNT
 EXEC stu;

六、sqlserver定时任务

  1、创建定时任务(即作业)

    参考网址:https://jingyan.baidu.com/article/b907e62790e89846e7891cc4.html?qq-pf-to=pcqq.c2c

  2、查看定时任务日志

    参考网址:https://jingyan.baidu.com/article/0f5fb099efaa2c6d8334eae5.html?qq-pf-to=pcqq.c2c

  

sqlserver学习_01的更多相关文章

  1. SQLServer学习笔记系列6

    一.写在前面的话 时间是我们每个人都特别熟悉的,但是到底它是什么,用什么来衡量,可能很多人会愣在那里.时间可以见证一切,也可以消磨一切,那些过往的点点滴滴可思可忆.回想往年清明节过后,在家乡的晚上总能 ...

  2. SQLServer学习笔记系列5

    一.写在前面的话 转眼又是一年清明节,话说“清明时节雨纷纷”,武汉的天气伴随着这个清明节下了一场暴雨,整个城市如海一样,朋友圈渗透着清明节武汉看海的节奏.今年又没有回老家祭祖,但是心里依然是怀念着那些 ...

  3. SQLServer学习笔记系列3

    一.写在前面的话 今天又是双休啦!生活依然再继续,当你停下来的时候,或许会突然显得不自在.有时候,看到一种东西,你会发现原来在这个社会上,优秀的人很多,默默 吃苦努力奋斗的人也多!星期五早上按时上班, ...

  4. SQLServer学习笔记系列2

    一.写在前面的话 继上一次SQLServer学习笔记系列1http://www.cnblogs.com/liupeng61624/p/4354983.html以后,继续学习Sqlserver,一步一步 ...

  5. SQLServer学习笔记<>相关子查询及复杂查询

    二.查询缺少值的查询 在这里我们加入要查询2008年每一天的订单有多少?首先我们可以查询下订单表的订单日期在2008年的所有订单信息. 1 select distinct orderdate,coun ...

  6. C++基础学习_01

    C++基础学习_01 基础知识:1.命名空间,2.IO流(输入输入),3.参数缺省,4.函数重载 1.命名空间 作用:对标识符的名称进行本地化,避免命名冲突 定义:namaspace space_na ...

  7. SQLServer 学习笔记之超详细基础SQL语句 Part 12(The End)

    Sqlserver 学习笔记 by:授客 QQ:1033553122 -----------------------接Part 11------------------- 现在,我们希望从 " ...

  8. SQLServer 学习笔记之超详细基础SQL语句 Part 11

    Sqlserver 学习笔记 by:授客 QQ:1033553122 -----------------------接Part 10------------------- DECLARE @myavg ...

  9. SQLServer 学习笔记之超详细基础SQL语句 Part 10

    Sqlserver 学习笔记 by:授客 QQ:1033553122 -----------------------接Part 9------------------- 删除约束的语法 ALTER T ...

随机推荐

  1. Delphi的RzDbgrid改变某行的背景色

    本想改变符合条件的行的背景色,试了DbgridEh和原生的Dbgrid直接在DrawColumnCell事件中写重绘代码就好了,But在RzDbgrid就不起效果,查了好一会,百度了一大堆,都是千篇一 ...

  2. C# QQ邮箱注册,以及数秒

    一. 这是前台需要的东西 <asp:TextBox ID="Textemail" runat="server" CssClass="nonein ...

  3. docker 使用案例:部署nginx

    首先安装docker.可以参考这篇教程: http://www.runoob.com/docker/windows-docker-install.html 本教程以windows10+ubuntu:1 ...

  4. OSI模型和TCP/IP协议族(三)

    TCP/IP协议族 TCP/IP协议族的开发要比OSI模型更早,因此TCP/IP协议族的分层结构无法准确地与OSI模型一一对应.原始的TCP/IP协议族定义为建立再硬件基础上的四个软件层,不通过目前T ...

  5. [转]SVN使用log,list,cat,diff查看所有及特定文件版本信息

    [转]SVN使用log,list,cat,diff查看所有及特定文件版本信息 http://onefishum.blog.163.com/blog/static/5184730520113153402 ...

  6. Cracking Wifi Wpa-Wpa2 in 5 second——Dumpper V.80.8 +JumpStart+WinPcap

    标题虽然说是5秒之内破解wpa-wpa2的wifi密码,不过其实这个是针对外国的那种路由器,我们大天朝的路由器越来越强悍了.有的路由器防pin,甚至于一些路由器没有pin,wps之类的.不过还是有一些 ...

  7. Centos7数据实时同步

    Rsync+inotify 功能要求 通过rsync+inotify将数据库指定目录实时同步到备份服务器. 环境说明 M:192.168.10.11 数据库服务器 S:192.168.10.13 备份 ...

  8. ios滑动流畅(丝般顺滑)滚动

    在ios html->body->list(少一个样式都不行!) html->body->list <!DOCTYPE html> <html lang=&q ...

  9. TypeScript入门(二)函数新特性

    一.TypeScript-Rest and Spread操作符 用来声明任意数量的方法参数  ...args中的...就是Rest and Spread操作符. 例1: 声明一个可以传任意数量的参数进 ...

  10. 用session做权限控制

    一个需要用户进行登录的网站,基本上都会设置用户权限,对不同的用户进行权限控制.例如:一个网站肯定会有一个管理员管理着普通的用户,普通的用户不可能对其他用户有着类似于增删改查等操作,这样网站都乱了--, ...