数据库

一. MySQL简介:

a) 数据库简介:

i. SQL Server 不跨平台

ii. Oracle 跨平台, java编写,市场占有率最多

iii. DB2  IBM的,java编写,跨平台

b) MySql的安装:

i. Shell>window命令

Mysql>mysql命令,(windows中不区分大小写,)

登录数据库:

Mysql  -u root -p 你的密码

查看已安装的数据库:

Show databases ;

基本sql语法(SQL 格式化查询语言)

DDL(定义数据库和表结构的语句)

数据库操作:

1,创建一个名为mydb1的数据库

Create database mydb1;

2.查看数据库创建细节:

Show  create  database  mydb1;

3.创建一个使用gbk字符集的mydb2数据库。

Create  database  mydb2  character  set  gbk;

4.创建一个使用utf8字符集,并带校对规则的mydb3数据库

Creat  database  mydb3  character  set  utf8  collate  utf8_general_ci;

5.查看当前数据库服务器中的所有数据库

Show  databases;

6.删除前面创建的mydb1数据库

Drop  database  mydb1;

7.查看服务器中的数据库,并把mydb2库的字符集修改为utf8;

Alter  database  mydb2  character  set  utf8  collate  utf8_general_ci;

8.备份数据库test(不会备份数据库名,只会备份数据库中的表结构和表中的记录)

shell>mysqldump -u root -psorry test>d:\test.sql

9.恢复数据库test(不会恢复数据库名,只会恢复数据库中的表结构和表中的记录)

恢复前要先创建数据库的名称

mysql>CREATE DATABASE test;

选择要恢复的数据库

mysql>USE test;

恢复备份的数据

mysql>SOURCE d:/test.sql;

表操作:

1.创建表:

Create  table  employee(

Id  int,

Name  varchar(200),

Gender  varchar(2);

Birthday  date,

Entry_date  date;

Job  varchar(100),

Salary  float(M,d),    M指定显示长度,d指定小数位数

);

2.查看当前数据库中的所有表格

Show  tables;

3.在上面员工表的基本上增加一个image列

Alter  table  employee  add  (image  blob);

4.查看表的字段

Desc  employee;

5.修改job列,使其长度为60

Alter  table  employee  modify  job  varchar(60);

6.删除gender列

Alter  table  employee  drop  gender,

7.表名改为user

Rename  table  emplyee  to  user;

8.修改表的字符集为utf-8

Alter  table  user  character  set  utf8;

9.列名name修改为username

Alter  table  user  change  name  username(200);

DML(操作对象是表中的记录数据。增加、删除、修改。Data Manage Language)

增加:INSERT。字符和日期类型数据要用单引号引起来。

1.使用insert语句向表中插入三个员工的信息

Insert into user (id,username,birthday,entry_data,job,salary)values (1,'jiangnan','1989-10-06','2012-07-10','coder',8000);

约束

主键约束: primary key 不能为空,不能重复

非空约束: nut null 不能为空

自动增长: auto _increment

外键约束: constraint  dept_id_fk  foreign key  (dept_id)  references  department(id)

dept_id_fk :  给外键一个命名

foreign key :  外键声明

dept_id : 指定外键对应表中的dept_id字段

department(id): 指定这个外键参考于department表中的id字段

多表连接:

一对多连接:

Create  table department(

Id   int  primary key,

Name  varchar(100)

);

Create  table  employee(

Id  int  primary  key,

Name  varchar(100),

Salaryfloat,

dept_id  int,

Constraint  dept_id_fk  foreing  key(dept_id)  references  department(Id)

);

多对多:

//教师表

Create table teacher(

Idintprimarykey,

Namevarchar(100)

);

//学生表

Createtablestudent(

Idint primarykey,

Namevarchar(100),

);

//第三方表

Create table teacher_student(

T_id  int,

S_id  int,

Primary key (T_id,S_id),

Constraint  T_id_fk foreign key (T_id) references  teacher(Id),

Constraint  S_id_fk  foreigns  key(S_id)  references  studnet(Id)

);

表数据类型:

黑马小日子--数据库基础相关推荐

  1. SSH:Oracle数据库基础

    2019独角兽企业重金招聘Python工程师标准>>> Oracle数据库基础 一:Oracle基础知识 Oracle数据库的主要特点 (1.)支持多用户,大事务量的事务处理 (2. ...

  2. 数据库基础笔记(MySQL)1 —— 基础概念

    (写算法题目把自己心态搞崩了,休息两天顺便把之前学的数据库手写笔记记录在网上方便查阅,因为只是自己学的时候做的笔记,如果有错误欢迎大家指正,过两天再重回算法的怀抱哈哈) 如何下载配置 这个感觉视频讲的 ...

  3. ORACLE系列之SQL从入门到精通(全面把控数据库基础)

    2019独角兽企业重金招聘Python工程师标准>>> 学习目标:                 1.了解设计数据库的步骤                2.掌握如何绘制数据库的E ...

  4. 1 SQL server数据库基础

    SQL server数据库基础 一 数据库简介 1数据库的基本概念 1)数据 ·描述事物的符号记录称为数据(Data),包括数字.文字.图像.声音等.以"记录"的形式按统一格式进行 ...

  5. Oracle数据库基础入门《二》Oracle内存结构

    Oracle数据库基础入门<二>Oracle内存结构 Oracle 的内存由系统全局区(System Global Area,简称 SGA)和程序全局区(Program Global Ar ...

  6. oracle 10g 连接语句,Oracle 10g数据库基础之基本查询语句-下-连接子查询

    实验18:表的连接查询 该实验的目的是掌握基本的联合查询. 表的连接 我们要从多张表中要得到信息,就得以一定的条件将表连接在一 实验18:表的连接查询 该实验的目的是掌握基本的联合查询. 表的连接 我 ...

  7. java学习与总结:MySQL和数据库基础知识

    文章目录 MySQL MySQL数据库索引数据结构 B树和B+树的区别 MySQL一条数据是怎么保存到数据库的 WAL : WRITE AHEAD LOG binlog 和 redo log 流程 M ...

  8. php大牛额城战笔记,PHP语言大牛开发笔记(8)——MySQL数据库基础回顾[2]

    本文主要向大家介绍了PHP语言大牛开发笔记(8)--MySQL数据库基础回顾[2],通过具体的实例向大家展示,希望对大家学习php语言有所帮助. 一.数据表 为了确保数据的完整性和一致性,在创建表时指 ...

  9. oracle 语句 在线测试,2017年Oracle数据库基础测试答案.doc

    . . word完美格式 2017年Oracle数据库基础测试答案 姓名 成绩 一.单项选择题(每题1分,共60分) 列出EMP表中,从事每个工种(JOB)的员工人数 A.select job fro ...

最新文章

  1. Facebook新AI模型实现直接从非英语语言翻译到另一种非英语语言
  2. linux子系统gdp调试,Linux系统中GDB功能汇总
  3. delphi webbrowser 经常用法演示样例
  4. html5中在图片上打字的语法,HTML5 canvas 基本语法
  5. 旋转图像—leetcode48
  6. scikit-learn学习笔记(一)快速入门数据集格式和预测器
  7. Windows下VTK6.0.0安装详解(CMake使用说明)
  8. AtCoder3950 [AGC022E] Median Replace(DFA + dp)
  9. MYSQL导入数据出现ERROR 1049 (42000): Unknown database 'n??;'
  10. JQuery使用deferreds串行多个ajax请求
  11. VS2015打开cshtml视图页文件报错 未将对象引用设置为实例 解决办法
  12. 优酷路由宝刷潘多拉固件最详细教程+最新版+赚钱插件
  13. Java实现一个简单的计算器功能
  14. LeetCode打家劫舍系列
  15. PIE-Engine 教程:水稻面积提取1(宿迁市)
  16. “辩”与“辨”的区别
  17. 华为设备路由器直连路由器配置
  18. 高品质后处理:十种图像模糊算法的总结与实现
  19. 怎样实现在单片机上跑LINUX系统,简述Linux如何应用在嵌入式单片机上
  20. 【每日早报】2019/12/31

热门文章

  1. 详尽!统计学知识大梳理
  2. 2020进阶版 -【C语言/C++编程语言学习路径图】!
  3. 7-69 猴子选大王
  4. 1+1中的“+“号是什么意思?
  5. 智慧水库大坝安全监测系统解决方案
  6. 院士发声:科研人也要养家,非升即走只能做短平快的研究
  7. WiFi 5Ghz信道表
  8. Android是基于Linux的开源操作系统也是Linux内核
  9. Java-Day12 面向对象的三大特征之封装、继承,单例模式(饿汉式、懒汉式)、方法重写 (覆盖)、注解 (annotation)、super关键字、对象的创建流程超详细
  10. c语言一个按键控制1个灯的亮灭,51 单片机:按键控制灯亮灭和闪烁