10月14日下午MySQL数据库基础
数据库基础
类型:
1.varchar;字符串,用于姓名班级,地址等,地址一般长50,姓名长20
2.int;整数,用于成绩,序号等
3.float;小数
4.bit;布尔型,用于性别等
5.时间也用varchar,因为datatime取得值需要转换
6.text; 特别长的数 ,随便往里面仍
1.主键
每个表都要有主键;主键是唯一的。全表中不能重复。
2.自增长列
自增长列是不好找主键时候用 名称是ids 类型是int 这一列是没有意义的。下面自动增长点对号
3.外键
从表
主表
主表控制从表
主表中的外键列一定是主键。 类型什么的一定要一样,练习时候用了一次类型写错了结果不能建立,以后要注意
规则:
数据库三大范式
第一范式:保证每一列的原子性,也就是拆到最小单位
山东省淄博市张店区*****
山东省 淄博市 张店区
第二范式:保证数据表的每一列都和主键相关
第三范式:保证数据表的每一列都和主键直接相关
1.将表拆分,一直到不能拆分为止
2.表名加前缀,小写
3.如果找不到主键,就用自增长列
4.外键关系可以不用加
使用数据库时,一定先要把WAMPW SERVER软件开启,否则数据库无法使用。
如果要建立新的数据库,就在Navicat 8 for MySQL右侧单击右键,选择创建数据库。输入数据库的名称,字符集选择utf8--UTF-8-unicode,点击确定,就创建了新的数据库。双击数据库名称,打开数据库。数据库在存储数据时采用表格的形式存储。
双击数据库的名称会出来数据库的选项,把鼠标放在“表”上,单击右键选择创建表,点击后弹出对话框,在对话框中可以选择创建表。创建表后的时候要规定表存什么信息,存的信息是由列决定的,所以创建表的时候往里填的都是列的信息。数据库里的信息不要用中文,一般用英语,还可以用拼音。尽量用小写字母,前面最好加上前缀,避免后期放到服务器上大量修改。例如作业系统,就写成zy_表名,一般用下划线分隔,规则规定的。
创建表的界面,名下面写列的名称,用英语或者字母写,能记住就可以。类型下面写数据类型,数据库存储数据时和excle表不一样,excle表存储时比较随意,而数据库存储数据时比较严谨,要求建的一列输入的内容要事先规划好。数据库中的字符串是varchar,字符串需要写长度,别的可以不写长度,选完varchar以后后面写上长度。一般常见的长度是20和50,短的设置为20,长的设置为50。后面还有一个选项是“允许空值”,意思是是不是允许不填,打上对号表示可以不填,去掉对号这列必须要填,不填的话存不上。建下一个列就点击创建栏位或者插入栏位。
表格建好以后如果想往里面存储数据,就双击打开表格 ,打开后会出现表格输入的列的名称。写完数据后点击下面的对号,保存数据。
一张数据表里面必须要有一个主键来唯一表示这条数据,选择要建立的主键后点击上面的主键,主键列最后面就会出现一个钥匙的标识。主键是用来控制这张表不能填入重复的信息。每一张表都要加主键。
自增长列,没有任何意义,仅仅是为了区分每一条数据,名称一般叫做ids。选择自增长列后选择下面的自动递增,自己会填充上,不用往里填数据。一般用在表不好找主键,每列都不能作为主键。
外键,外键必须有2张表,这2张表之间必须有关系。这2张表可以成为主表和从表,制约另一个表的表叫做主表,被制约的表叫做从表,主表控制从表。
主表中的外键列一定是主键。
外键在数据库起到的作用是使数据更加安全。如果建立了外键关系,主表的内容就不能随便删除了,如果删除了一列,那么和这列有关的从表就会受影响出问题。如果要删除主表的内容,就得把从表里先联系的数据全部删除。
主表不能随便乱动,从表可以。
1.建表规则
数据库三大范式
第一范式:保证每一列的原子性
第二范式:保证数据表的每一列都和主键相关
第三范式:保证数据表的每一列都和主键直接相关
经验总结:
1.能够往下拆的表尽量往下拆,拆到不能拆为止。
2.建立表的时候表名加前缀,最好是小写(只适用于WAMPSERVER数据库)
3.如果找不到主键,就用自增长列。
4.外键关系可以不用加
10月14日下午MySQL数据库基础的更多相关文章
- 10月28日下午MySQL数据库的增加、删除、查询(匹配数据库登录和可以增、删、查的显示数据库内容的页面))
一.匹配数据库登录 步骤: 1.做一个普通的登录界面,注意提交方式为post. <!--登录界面--> <form action="chuli.php" meth ...
- 10月16日下午MySQL数据库CRUD操作(增加、删除、修改、查询)
1.MySQL注释语法--,# 2.2.后缀是.sql的文件是数据库查询文件. 3.保存查询. 关闭查询时会弹出提示是否保存,保存的是这段文字,不是表格(只要是执行成功了表格已经建立了).保存以后下次 ...
- 10月16日上午MySQL数据库基础操作(创建、删除)
以前用的是鼠标在界面上手动创建,这样创建会比较麻烦,而且还会经常出问题.在其它电脑上要用的话还需要重复操作.所以要使用程序代码操作,能通过代码的就不用手动操作. 在数据库界面选择要用的数据库,双击打开 ...
- 10月17日下午MySQl数据库CRUD高级查询
高级查询:1.连接查询 #适用于有外键关系的 没有任何关系没法用select * from Info,Nation #同时查询这俩表并把两表每个数据相互组合,形成笛卡尔积 select * from ...
- 10月30日上午MySQL数据库的修改(从网页上实现对数据库的更改)
从网页页面上对数据库进行更改,连接着之前做的增加.删除.查询. 1.先做一个修改页面 <body> <!--这个页面需要让用户看到一些数据,所以不是一个纯php页面,页面效果和增加页 ...
- 10月21日上午MySQL数据库学习内容复习
1.创建数据库create database 数据库名称删除数据库drop database 数据库名称 2.创建表create table 表名(列名 类型(长度) 自增长 主键 非空,)自增长:a ...
- 10月16日上午MySQL数据库作业设计表解析
作业设计表:多张表存储学生成绩及各种信息 需要从表里面体现: 关于学生的:代号 姓名 性别 年龄 班级 关于课程的:代号 名称 关于老师的:代号 姓名 关于成绩的:例如:闫超--网页--90 要能查看 ...
- 2016年10月14日 星期五 --出埃及记 Exodus 18:25
2016年10月14日 星期五 --出埃及记 Exodus 18:25 He chose capable men from all Israel and made them leaders of th ...
- IntelliJ IDEA 最新激活码(截止到2018年10月14日)
IntelliJ IDEA 注册码: EB101IWSWD-eyJsaWNlbnNlSWQiOiJFQjEwMUlXU1dEIiwibGljZW5zZWVOYW1lIjoibGFuIHl1IiwiYX ...
随机推荐
- 1020关于mysql一个简单语句的执行流程
MySQL的语句执行顺序 转自http://www.cnblogs.com/rollenholt/p/3776923.html MySQL的语句一共分为11步,如下图所标注的那样,最先执行的总是FRO ...
- oracle游标调试结果显示位置
在SQL窗口输入内容,按F8后,可以在下图看到
- 使用D3绘制图表(2)--绘制曲线
上一篇是使用D3绘制画布,这一篇的内容是在画布上绘制曲线. 1.之前的html代码没有变化,但是我还是贴出来 <!DOCTYPE html> <html> <head&g ...
- 【CodeVS 1199】【NOIP 2012】开车旅行
http://codevs.cn/problem/1199/ 主要思想是倍增,对于第一个回答从后往前扫,依次插入平衡树中. 我写的splay,比较繁琐. #include<cmath> # ...
- 【PKUSC 2015的一道数学题】
有9个人,每三个人中至少有两个互相认识,求证这里面至少有4个人互相认识 PKU官方题解: 引理:二染色K6中一定有同色K3. 证明:考虑某一个点,它一定连出至少三条同色边(不妨设为红边),这三条边连的 ...
- Jquery-pagination.js分页处理
首先提供pagination.js的插件源码 /** * This jQuery plugin displays pagination links inside the selected elemen ...
- Python之几种重要的基本类型:元组,列表,字典,字符串,集合
写在前面:重点讲解元组,列表,字典相关概念和常用操作. 一.元组(tuple) 1.特性:不可更改的数据序列.[理解:一旦创建元组,则这个元组就不能被修改,即不能对元组进行更新.增加.删除操作] 2. ...
- 用 unoconv 将 xls 转换成 csv
在 Linux 下,用 unoconv 将 xls 转换成 csv. unoconv -f csv -v input.xlsx
- 算法求和sum问题
问题:SUM(n) = 1 + 2 + 3 + ... + n写个算法 回答: #include<stdio.h>int main(){ int n,sum; while(sc ...
- hdfs创建级联文件夹
一个文件夹 hdfs dfs -mkdir /out /一定要有 级联 hdfs dfs -mkdir -p /out/ags 需要家-p