• sql server相关操作


    sql语句

    数据库表操作

    增加列

    alter table [BUSITMS].[dbo].[P_PROJECT_MOL_EXTENTION_INFO] add vc_test2 [nvarchar](1) not null default '0'

    删除列

    alter table [BUSITMS].[dbo].[P_PROJECT_INFO_BACK] drop column VC_IS_MOL

    备份表

    select * into [BUSITMS].[dbo].[P_PROJECT_INFO_BACK] from [BUSITMS].[dbo].[P_PROJECT_INFO]

    插入单独数据

    INSERT into [BUSITMS].[dbo].[P_PROJECT_MOL_EXTENTION_INFO](VC_ID) values('029cb4f0551743c3b09b0d5a5bdf3301')

    多表联查

    left join(左联接) 返回包括左表中的所有记录和右表中联结字段相等的记录,假如右表没有,返回null
    right join(右联接) 返回包括右表中的所有记录和左表中联结字段相等的记录,假如左表没有,返回null

    select * from A left join B on A.aID = B.bID

    inner join(等值连接) 只返回两个表中联结字段相等的行

    SELECT * FROM TableA INNER JOIN TableB ON  TableA.id = TableB.rec_id

    LEFT (OUTER) JOIN   产生表A的完全集,而表B中匹配的则有值,没有匹配的则以null值取代.

    RIGHT(OUTER)  JOIN 产生表B的完全集,而表A中匹配的则有值,没有匹配的则以null值取代

    FULL (OUTER)   JOIN  产生A和B的并集,对于没有匹配的记录,以null值做为值

    SELECT * FROM TableA RIGHT   OUTER JOIN TableB ON TAbleA.id = TableB.rec_id

    Union: 

    只适合列数相同的表,表A、表B,将B的所有数据放到A表里面,

    与join相比就是,join增加列,union增加行

    sql server根据查找到得值,来改成自己想要的值

    (case a.VC_TASK_STATUS when 0 then '未开始' when 1 then '进行中' when 2 then '已完成' end) as RWZT

    sql server根据日期排序

    select * from “你所需要的表名” order by convert(char(19),“日期的字段名”,120)

    视图

    当基于一个表或者多个表创建了视图后,当你修改表数据,视图也会随之改变。本地TMS数据库没有改变的原因是因为数据库复制过来的,把view当成了table,所以失去 了该功能

    创建例子

     

    存储过程

    创建

    use BUSITMS
    go
    if(exists(select * from sys.objects where name ='Transfer'))
    drop proc Transfer
    
    go 
    create procedure Transfer(@DeleteProjectName varchar(32),@TargetProjectName varchar(32))
    as 
    begin
    declare @DeleteProjectID varchar(32)
    select @DeleteProjectID = VC_ID from P_PROJECT_INFO where VC_PRO_NAME=@DeleteProjectName;
    
    declare @TargetProjectID varchar(32)
    select @TargetProjectID = VC_ID from P_PROJECT_INFO where VC_PRO_NAME=@TargetProjectName;
    
    declare @TaskID varchar(32);
    select @TaskID = VC_ID from P_PRO_TASK_INFO where VC_PRO_ID=@DeleteProjectID
    
    if(@DeleteProjectID is null) return
    if(@TargetProjectID is null) return
    if(@TaskID is null) return
    
    update P_PRO_TASK_INFO set VC_PRO_ID=@TargetProjectID where VC_PRO_ID=@DeleteProjectID
    update P_PRO_TASK_REPORT set VC_PRO_ID = @TargetProjectID where VC_TASK_ID = @TaskID
    delete from P_PROJECT_INFO where VC_PRO_NAME = @DeleteProjectName
    
    end
    go

    执行

    exec dbo.Transfer @DeleteProjectName=N'22345',@TargetProjectName=N'ddddd';

    sqlServer数据库备份和还原

    1.sqlserver 本地复制数据库

    https://blog.csdn.net/lynehylo/article/details/80577519

      先备份,再还原,中间可能报错,按如下操作

      1. 恢复数据库时,单击左边的“Option”,在右侧,你会看到“Restore Options,勾选”Overwrite the existing database.
      2. 在Restore the database as选项表格中有两行,一行是数据文件,一行是日志文件,在Restore As列中将他们分别改为你新数据库名(B.mdf, B.ldf).

          3. 点击OK既可正确恢复数据了。
      还原后的数据库,可能会一直显示“正在还原...”。管理器不会主动刷新,手工刷新一下。如果手工刷新后还是显示“正在还原”,则可能是进程被挂起了,需要执行:RESTORE database  dbname2 with recovery 即可。

    2. sqlserver远程复制数据库  

    开始菜单打开Import and Export 工具,选择远程数据库和本地数据库,假如密码失败,则通过Windows Authentication.

    但是这种情况下,暂时有2点问题

    <1>原来的view移植过来会变成表,需要重新生成

    <2>原来的表的自增字段会变成普通字段,需要手动修改Identity Specification, 修改的过程中会报错,需要修改Microsoft SQL Server Management Studio的配置

     sql server 中普通字段修改为自增字段,如图:

    把否修改为是,然后按ctrl+s报错

     修改如下配置

     

     去掉勾

    回到设计表中再次按ctrl+s保存字段自增

    备份数据库报错

     本地备份,只能备份到指定目录

    配置数据库,使得它可以被远程访问

     Right click the server, select Property

     Right click the folder, click manage

    Open the firewall and set Inbound Rules, allow ip and port

    https://blog.csdn.net/qq_2300688967/article/details/80356613

    c# connection string设置

    Server或者OpenSource都可以使用,值使用远程或本地的服务器名字

    var connectionString = "Server=CN11WPWANG-702\SQLEXPRESS;user id=sa;pwd=1111111;database=test";
    
    using (SqlConnection connection = new SqlConnection(connectionString))
    {
            connection.Open();
    }
  • 相关阅读:
    2018-2019-2 网络对抗技术 20165206 Exp3 免杀原理与实践
    2018-2019-2 网络对抗技术 20165206 Exp2 后门原理与实践
    2018-2019-2 20165206《网络对抗技术》Exp1 PC平台逆向破解
    css常见布局之三列布局--双飞翼布局和圣杯布局
    css常用布局
    基础总结(05)-- 回流和重绘
    基础总结(04)-- display:none;&&visibility:hidden;区别
    js实现点击按钮复制文本功能
    基础总结(03)-- css有趣的特性
    基础总结(02)--BFC(块级格式化上下文)
  • 原文地址:https://www.cnblogs.com/xiaojidanbai/p/14182015.html
Copyright © 2020-2023  润新知