• 环境:mysql server 和 navicat

目的: 用sql命令建立 学生-课程 数据库基本表。

image-cSbz.png

实现

  • 运行 Navicat 连接数据库,进入GUI界面。

利用图形建表

  • 建立database,命名为zhz。
    image-ajOp.png
  • 建立表,命名为student,sc,course。
    image-ytVb.png
  • 为三个表添加字段,以及约束。
    image-HVpv.png
  • 为sc,course表添加外键。
    image-vuzJ.png

命令建表

  • 建立database,命名为zhz。
    image-ajOp.png
  • 在查询里新建查询。
    image-gaBN.png
  • 保存(ctrl + v),并命名。
    image-hMbC.png
  • 在各个查询里输入命令。
    image-TWul.png

image-pnfn.png

image-GpRJ.png


效果

image-hhaV.png
ps:现在的表里没有数据,同样可以通过navicat的GUI界面直接输入数据,也可以通过命令的形式:增删改查(注意,在设置表和定义外键的时候会形成一些约束,如Cno不为空)。


在CMD中连接数据库

mysql -u root -p

image-MHPn.png

  • 退出
    exit或者quit

数据库操作

  • 查看所有数据库
    show databases;
  • 建立数据库
    create datdase 库名;
  • 切换数据库
    use 库名;
  • 查看当前所在数据库
    select database();
  • 删除数据库
    drop database 库名;

表操作

  • 查看所有表
    show tables;
  • 查看
    desc 表名;
  • 查看
    show create table 表名;
  • 创建一个user表,有id,name字段
    create table user(id:int,name varchar(50));
  • 修改
    • 添加字段
      alter table 表名 add column 字段名 类型;
    • 修改字段alter table 表名 modify column 字段名 新类型;
    • 删除字段alter table 表名 drop column 字段名;
  • 删除
    drop table 表名;

数据操作(待完善)

  • 插入insert
  • 更新update
  • 删除delet
  • 清空truncate table

常见问题

  • sql语句要带有英语的;结尾。