zoukankan      html  css  js  c++  java
  • MS SQL Server 增删改查

    数据插入

    语法:INSERT INTO Table_name(field1,field2……fieldN) values(value1,vlaue2,…valueN)

    单行插入用户类型

    INSERT INTO userType(TypeName,TypeDescription) VALUES('管理员','管理员')

    多行插入用户类型

    INSERT INTO UserType(TYpeName,TypeDescription) VALUES('录入员','数据录入员'),('查询员','只能做数据查询操作')

    插入用户信息

    INSERT INTO UserInfo(userName,userLogin,USERPassword,UserEmail,UserType) VALUES

    ('张三','zhangsan','zhangsan','zhangsan@qq.com',1),

    ('李四','lisi','lisi','lisi@qq.com',2),

    ('王五','wangwu','wangwu','wangwu@qq.com',1),

    ('赵六','zhaoliu','zhaoliu','zhaoliu@qq.com',3),

    ('赵六','zhaoliu','zhaoliu','zhaoliu@qq.com',3)

    数据删除

    Drop Table table_name

    Delete from Table_name [where 条件表达式]

    Truncate Table table_name

    删除张三用户信息

    DELETE FROM UserInfo WHERE UserName='张三'

    删除用户全部数据

    DELETE FROM UserInfo

    清空用户数据表

    truncate table userinfo

    删除用户表

    Drop Table UserInfo

    Delete 和Truncate 的区别

    Truncate 不能带有where 条件语句;

    Truncate删除的数据不可以恢复;比delete速度快。

    Delete删除的数据可以恢复;语句每次删除一行,并在事务日志中为所删除的每行记录。

    Truncate Table:删除内容、释放空间但是不删除定义。

    Delete Table:删除内容不删除定义,不释放空间。

    Drop Table:删除内容和定义,释放空间。

    特定条件的信息不需要了使用delete;如果表格所有数据都不需要了,使用Truncate;如果表本身也不需要了,直接使用Drop

    修改

    Update table_name set field1=new-value1,field2=new-value2 …[where 条件表达式]

    修改语句可以同时更新一个或者多个字段。

    使用where限定条件,大部分时间是需要限定的。

    修改第二个名字叫赵六的用户信息

    UPDATE userinfo SET UserLogin='zhaoliu1',userPassWord='zhaoliu1',userEmail='zhaoliu1@qq.com' WHERE id=5

    数据查询

    语法:

    Select column_name1,column_name2... from table_name [where 条件][group by 属性名 [having 条件表达式]] [order by 属性[ asc | desc ]] [limit<offset, row count>]

    Sql查询语句中可以使用一个或者多个表进行查询,并且使用where语句设定查询条件,查询的结果为一个集合。

    使用星号(*)可以代替其他所有字段。

    Group by 语句:按照【属性名】指定的字段进行分组

    Having :有group by 才能使用having 分组后的二次计算。

    Order by:按照【属性名】对指定的字段进行排序”asc”升序 “desc” 降序;默认为asc

    使用Limit属性来设置返回记录的条数,下标从0开始,类似于SQL Server 中的top。

    查询示例:

    -- 查询所有用户类型

    SELECT * FROM userType

     

    -- 查询所有用户信息

    SELECT * FROM userInfo

     

    -- 查询前两个用户信息

    SELECT top 2 * FROM userInfo

     

    -- 根据用户编号降序查询用户信息

    SELECT * FROM userInfo ORDER BY ID DESC

     

    -- 根据用户编号升序查询用户信息

    SELECT * FROM userInfo ORDER BY ID

     

    -- 查询姓【王】的用户信息

    SELECT * FROM userInfo WHERE userName LIKE '王%'

     

    -- 查询登录名中包含【a】的用户信息

    SELECT * FROM UserInfo WHERE UserLogin LIKE '%a%'

     

    -- 查询用户类型为管理员的用户信息

    SELECT * FROM userInfo WHERE usertype IN(SELECT ID FROM UserType WHERE typename='管理员' )

     

    -- 查询每个用户类型的用户数量

    SELECT (SELECT TypeName FROM UserType WHERE UserType.ID= UserInfo.UserType),COUNT(*) AS TypeNum FROM userInfo GROUP BY UserType

     

    -- 查询用户信息中重名的名字

    SELECT UserName FROM userInfo GROUP BY UserName HAVING COUNT(*) > 1

  • 相关阅读:
    ASP.NET常用技巧方法代码断
    130道ASP.NET面试题
    ASP.NET 数据绑定常用代码及其性能分析
    asp.net C# 时间格式大全
    ASP.NET 日期 时间 年 月 日 时 分 秒 格式及转换
    经典算法,每个语言都出现的算法
    Asp.net 后台添加CSS、JS、Meta标签
    ASP.NET 窗体间传值实现方法详解
    asp.net 常用的几种调用存储过程的方法
    codeforces 868C
  • 原文地址:https://www.cnblogs.com/zhaochengshen/p/5612289.html
Copyright © 2011-2022 走看看