zoukankan      html  css  js  c++  java
  • 数据库编写

    1.1.    数据库常用约束

    l  主键约束:primary key

    l  外键约束:foreign key (references)

    l  唯一值约束:unique

    l  默认值约束:default

    l  检查约束:check

    l  非空约束:not null

    l  标识列:identity

    1.2.    创建数据表注意事项

    l  建表之前,一定不要忘记使用指定的数据库

    l  建表顺序 -> 主、外键

    l  主外键数据类型必须一致

    l  列与列之间用','间隔,最后一列不加','

    l  如果两张表确有关联,而题目没给出主外键,则可自行添加主外键

    1.3.    插入数据注意事项

    l  values里的数据个数、类型、精度必须与表中对应列保持一致

    l  表中不允许为空的列必须插入数据,有默认值的除外

    l  不能为标识列添加数据,因为它是自增的、禁止修改

    l  插入字符类型、日期类型等非数值数据时,需要用单引号包含

    l  插入的数据必须满足表的约束条件,check、unique等

    l  可以省略表名后面的列名,但是这需要保证values 里各项数据的顺序和数据表中列的顺序一致,初学者不建议省略

    l  对具有默认值的列和允许为空的列,就需要用到 default 和 null 关键字

    l  一般不推荐使用多行插入,尤其是在插入主键表时

    l  日期时间插入格式'2020-04-14 09:51:00'或'2020/04/14 09:51:00',如果不需要显示时间,则直接插入年月日即可

    1.4.    连接查询的补充

    1)       内连接查询(两张表匹配的部分,比如这个学生即在学生表、又在成绩表)

    主表 inner join 从表 on 主键=外键  =>  where 主键=外键

    select * from info inner join mark on info.sid=mark.sid

    select * from info,mark where info.sid=mark.sid

    2)       外连接查询(一张表的全部和另一张表的部分或全部,比如这个学生没有成绩)

    ① 左外连接:左表 left [outer] join 右表 on 主键=外键  ->左表的全部

    ② 右外连接:左表 right [outer] join 右表 on 主键=外键 ->右表的全部

    select * from info left outer join mark on info.sid=mark.sid->+全部学生,不管这个有没有成绩。如果有成绩,则输出成绩;如果没有,则输出null。

    如何选择?一旦要求查询某张表内的全部数据,一定首先使用外连接!!!

    1.5.    创建数据库基本步骤

    1)       修改当前数据库为master,以解决无法删除数据库问题->  if exists()

    2)       如果存在数据库,则进行删除 -> drop database数据库名字

    3)       创建数据库 -> create database数据库名字

    4)       使用数据库 -> use 数据库名字

    5)       创建表 -> create table 表名(列名1 数据类型1 约束...,.....)

    6)       插入测试数据 -> insert into 表名 values(值1,值2...default/null/getdate())

    7)       执行查询,进行检验 -> select * from 表1,表2 where 主键=外键(可能外连接)

  • 相关阅读:
    Educational Codeforces Round 67 D. Subarray Sorting
    2019 Multi-University Training Contest 5
    Educational Codeforces Round 69 (Rated for Div. 2) E. Culture Code
    Educational Codeforces Round 69 D. Yet Another Subarray Problem
    2019牛客暑期多校训练第六场
    Educational Codeforces Round 68 E. Count The Rectangles
    2019牛客多校第五场题解
    2019 Multi-University Training Contest 3
    2019 Multi-University Training Contest 2
    [模板] 三维偏序
  • 原文地址:https://www.cnblogs.com/aaaY/p/13137852.html
Copyright © 2011-2022 走看看