zoukankan      html  css  js  c++  java
  • ASP.NET第二天数据库知识

    第二天

    复习:

    1.创建数据库、表

    2.插入数据

    3.T-sql来 创建数据库、表、插入、删除、修改、查询(基本查询)表中的数据

     

    创建数据库:

    Create database db

    Create database db

    On primary

    Name=db,

    Filename=c:\db.mdf,

    Size=3mb,

    Maxsize=100mb,

    Filegrowth=10%

    Create table biaoming    --alter table biaoming ()  修改表

    (

    Lieming int identity (1,1)primary key,

    Lie2 varchar (50)not null

    )

    Drop table biaoming   --删除表

    [ ]可有可无的内容;

    Insert into biaoming(列1,列2,列3valuesa,b,c

    Select a,b,c union     --想要插入重复数据,可在后面加上all

     

    Select *into newtable from oldTable where age>5  --拷贝表内容,但是主键是不能被跟着来的,一起的只有它的数据

    Select*into newtable from oldTable where 1=2  --只拷贝表结构,因为没有一条数据能够满足1=2所以没有数据可以拷贝;

    ---更新

    Update biaoming set lieming =1lei2=值,lei2=值,where lie2>10and. . ..and...or

     

    --删除

    Delete from biao where age>20

    ----一次删除表中的所有数据

    Delete from biao 

     

    Truncate table biaoming

     

    Select*from biaoming where. . .

    Select name, age from biao where. . .

     

    273734825

     

    手动删除一列

    Alter table employee drop column emp_address 

    手动增加一列 

    Alter table employee alter column emp_email varchar200

     

    约束

    1. 主键约束→primary key必须是int类型,右键单击选择“设置主键”

    2. 唯一约束→unique对着列右键单击,选择“索引/键”,点击“添加”,在“类型”中选择唯一键,在“列”中选择要设置的列

    3. 检查约束→check对着列右击,选择“CHECK约束”,点击“添加”,在“表达式”中输入要设置的条件,“名称”可以选择改与不改

    4. 默认约束→default单击要设置的列,在列属性中的“默认值或绑定”中输入默认的值

    5. 外键约束→foreign key对着列右击,选择“关系”,点击“添加”,打开“表和列规范”的右边的按钮,在“表和列”的主键表的下拉菜单中,选择主键表,在下面的列中选择主键表中的列,在外键表的下面选择选择连接主键表的列,单击“确定”

    6. 非空→not null 

    7. 外键约束需要在外键表中建立

     

     

    empId增加一个主键约束

     

    增加一个非空约束恰是就是修改列

    Alter table employee alter column emp_name varchar50not null

     

    empname 增加一个唯一约束

    Alter table employee  add  constraint  UQ_employee_emp_name unique (emp_name)

     

    为性别增加一个默认约束;默认为“男”

    Alter table employee add constraint  DF_Employee_emp_gender default()for emp_gender

     

    想要增加外键约束,必须是主键,如果不是主键,则需要增加一个主键

    department表增加一个主键

    给列起别名: as可以省略 ,也可以是 :姓名=FName

     

     

    函数是粉颜色的

    这个是更加准确的时间

     

     

    Print getdate()以文本的形式输出

    查找表中的前10条数据,更加精准

    Select top 10*from MyStudent 

    Select top 20 percent *from mystudent 表示查询前百分之20条的记录;

     

    Select top 5*from mystudent order by FAge ASC 升序排列后,显示 desc是降序

    默认的是升序的select*from mystudent order by FAge   最好加上排序方式

     

    Select distinct * from 表名  distinct 表示对查询出的结果集,进行去除重复,只有完全重复的行,才会去除。Select distinct 姓名,性别,年龄 from 表名 可以排除一些条件,

     

    查询年龄最大的年龄    最小用min  ()中的是要查询的列名

     

     

    查询所有同学的年龄的总和   平均值是avg  总数据条数count

     

     

     

    当在查询的列中,使用了聚合函数的时候,那么就不能再列表中再出现其他列名了,除非该列也包含在聚合函数中,就算数据只有一条也不行,如:

     

     

    查询没有及格的男学生的

    Select*from mystudent where math<60  or  english<60and gender=

     

    区间查找是用between 

     

    模糊查询

     

     

     

    要查询的记录是几位后面就加上几个下划线;

    如果用[ ]括起来的下划线就代表着,它就是下划线;不再是通配符;百分号是一样的;数量随便,可以在[ ]中,可以用正则表达式,只有一部分;

     

    查找所有的数学成绩为null的数据

     

     

    查找所有的数学成不为null的数据,在其中加上not

     

    数据排序order by永远放在语句的最后)

     

    按照英语和数学的总成绩进行排序

     

    可以直接使用别名,

     

     

    先按英语排序,如果英语成绩一样,则再按数学排序

     

    中间用逗号 隔开;

    分组查询

    查询出每个销售员的 总的销售数量

     

     

    查找出每个班的班级id,以及这个班的学生的总人数:

     

     

    查找每个班的所有的男生人数

     

    1.where ,在分组前筛选数据

    2.Having,在分组后筛选数据

    查找出班级中的人数大于250的班级

     

     

    使用了聚合列时,就不能使用普通列了,

     

    不能有fname as 姓名这个列,fclassid是分组的依据,所以不会错

     

    执行顺序:

    1.from 

    2.Where 条件

    3.Group by 

    4.Having 筛选条件

    5.Select 选择列, distinct  top

    6.Order by 

     

    类型转换

    字符串直接与整数相加出错(类型不匹配)

  • 相关阅读:
    正则表达说明—Pattern API
    C#调用dll(Java方法)
    获取页面URL两种方式
    可拖动布局之jQueryUI
    可拖动布局之Gridster
    Thymeleaf入门基础
    Eclipse安装反编译插件
    Spring Boot:Consider defining a bean of type '*.*.*' in your configuration解决方案
    Spring Boot : Whitelabel Error Page解决方案
    MYSQL卸载
  • 原文地址:https://www.cnblogs.com/mafacai/p/2822408.html
Copyright © 2011-2022 走看看