MySQL笔记2-数据库和表

    科技2022-07-10  125

    一、创建数据库 数据库Database,就是存储数据的仓库 MySQL自带4个数据库: informatio_schema mysql performance_schema 以上三个表都是系统自带表,尽量不要对其进行误操作 test 可以在test中进行测试

    创建数据库 右键root@127.0.0.1(localhost),点击新建数据库

    删除数据库 右键要删除的数据库 -> 更多数据库操作 -> 删除数据库

    二、创建表 创建数据库test_school,用于存储学校内的数据 创建表test_student,用于存储学生的信息

    三、数据类型 向表添加一列(字段)时,需指定列的数据类型 数据类型大致分为5类 1、整数 int tinyint smallint bigint 2、字符串:短文本 char varchar 3、浮点数 double float 4、日期时间 date日期 time时间 datetime日期+时间 timestamp 5、大块数据:长文本 tinytext text mediumtext longtext blob

    整数类型 tinyint:1字节 smallint:2字节 mediumint:3字节 int:4字节 bigint:8字节

    浮点类型 double:8字节 float:4字节

    字符串类型 char:固定长度字符串 varchar:可变长度字符串 注意:使用字符串类型必须指定最大长度

    日期/时间类型 datetime:日期时间 2020-10-3 18:48:00 date:日期 time:时间 timestamp:时间戳(字1970-01-01 00:00:00) year:年份

    大块数据类型 BLOB(binary large object)二进制大对象 text:存储大段文本数据 blob:存储大段字节数据 其中 text又分tinytext,text(65K),mediumtext(16M),longtext(4G)

    列的属性 列名:列的名称 数据类型:该列存储何种格式的数据 长度:对于varchar/text来说,指最大空间 默认值:添加一行时该列的默认值 非空:是否允许空值 主键:将某个字段设置为主键 自增:

    列名Column Name 可以是中文,但通常用英文或拼音 推荐命名规范: a、不要使用SQL里的关键词 b、使用有意义的单词或简写 c、第一个单词小,与java兼容,减少麻烦

    数据类型Date Type 初学者常用: int/bigint double varchar datetime/date

    长度Length 对于varchar/text字段,需要设置最大长度 不区分中英文,按字符数统计 对于其他类型,不需要设置长度(意义不大) 例如:int(4)表示最小显示宽度为4,不足时凑空格或0(需勾选ZeroFill属性)

    非空Not Null 空值NULL:指这一列的值尚未设置 当一列设置为“非空”时,表示该列不允许空值

    默认值Default Value 当添加一行时,若某列的值未设置,则自动填一个默认值

    主键Primary Key 当创建一个表时,可以将某个字段设置为主键 Primary Key,即唯一标识 例如:在student表中,可以将id设为主键,因为id可以唯一标识一行记录

    主键设计遵循以下原则 1、可以唯一标识一条记录(不允许重复) 2、通常为由整型或字符串型(短字符串) 3、一个表最多只有一个主键 4、主键与数据库里的列的位置无关 5、建议所有的表都设置主键

    主键的作用 主键唯一标识一行记录 MySQL会把主键单独拿出来,存为一个索引,排序后存储(方便后序的查找) 整数主键的查找速度更快

    自增Auto-Increment 当以整型字段为主键时,可以同时设置为自增 所谓自增,即插入记录时,由MySQL来生成ID,保证ID是自增的(每次加1) 自增是一个非常常用的属性,与主键配合使用

    自增的起点 新建的表,默认从1开始 或表中有数据,从上一个最大值开始 过号作废,不重复 可以指定起点(改变表 ->高级 -> 自动增量)

    Processed: 0.008, SQL: 8