核心内容摘要
台北娜娜nana:都市漫游者的心跳与回响
(
.库的操作
查看数据库在MySQL中我们可以使用show databases语句来查看目前已经被创建好的数据库注意当我们忘记写“”的时候按Enter 后就会另起一行继续去写未完成的SQL直到遇见“”为止如果中途写错了我们可以通过Ctrlc重新开始一行
创建数据库(
.语法(
.实例i.创建一个java111的数据库ii.如果Java112不存在则创建java112数据库我们可以通过show warnings;命令来查看这个警告当我们在已经创建好了java112数据库的情况下再直接创建java112则会直接报错我们可以看到警告的信息和直接报错的信息一模一样iii.创建一个名为java113的数据库并指定字符集和排序规则iv.创建一个名字为关键字的数据库我们知道create 、database 为MYSQL中的关键字那么我们是否可以创建一个名字为 “create”的数据库通过我们的实验显然是不行的但是我们可以通过反引号来创建
查看当前数据库服务全局的默认字符集使用show variables like %character%;命令
使用数据库use 数据库名 ;在使用之前我们可以先查看一下当前选择的是哪个数据库使用select database();命令通过上面的图片可以看到我们当前没有使用任何一个数据库现在假设我们要使用java111这个数据库那么我们就通过use java111命令来使用java111这个数据库
删除数据库DROP{DATABASE | SCHEMA} [IFEXISTS]db_nameDROP 表示删除IF EXISTS 表示指定的数据库存在db_name 表示要删除的数据库名通过上面的图片我们可以看到我将原来创建的java111java112java113这三个库都删除了然后再通过show databases;命令去查看数据库的时候已经没有这三个库了(
.数据类型
数值类型数据类型大小说明对应java类型bit[(M)]M指定位数默认为1二进制数M的范围从1到64存储数值范围从0到2^M-1常用Boolean对应BIT此时默认是1位即只能存储0和1tinyint1字节booltinyint(
Bytesmallint2字节Shortint4字节我们平时常见的intIntegerbigint8字节用在编号字段Longfloat(M,D)4字节单精度M指定长度D指定小数点位数。
会发生精度丢失Floatdouble(M,D)8字节Doubledecimal(M,D)M/D最大值2双精度M指定长度D表示小数点位数。
精确数值一般用于表示金额BigDecimalnumeric(M,D)M/D最大值2和decimal一样BigDecimal注意①.float和double类型在表示小数的时候都不是特别精确所以使用decimal类型去表示小数②.在有些系统中表示金额一般把“元”为单位换成以“分”为单位然后用int类型去表示金额③.M中不计算小数和负数的如果D为0则具体的值不保存小数点和小数部分也就是说保存的是一个整数decimal的最大位数(M)为65支持最大的小数(D)为30如果省略D则默认是0如果省略M,则默认是
字符串类型数据类型大小说明对应java类型varchar(size)0~65535字节可变长度字符串最常用的一种字符串类型可以指定长度是多少即多少个字符Stirngtext0~65535字节长文本数据Stringmediumtext0~16777215字节中等长度文本数据Stringblob0~65535字节二进制形式的长文本数据存的是byte数组即一个文件的二进制形式byte[]注意①.varchar(
10为指定的字符串的长度不是字节的大小也就是说定义一个字段字段可以存放10个和10个以内的字符超过10个字符就报错之前我们设置了数据库的编码集utf8mb4编码集一个字符最多占4个字节根据字符的具体情况用
个字节表示一个字符在utf8mb4编码集的情况下一个varchar字段最多可以存放16383( 65535/4 )个字符②.一般在数据库中不建议存文件而是把文件存在磁盘上在数据库相应的字段中保存文件路径。
在查询文件的时候先从数据库中找到文件路径再去根据文件路径在磁盘上加载或是返回具体的真实文件。
日期类型数据类型大小说明对应java类型datetime8字节范围从1000到9999年不会进行时区的检索及转换java.util.Datejava.sql.Timestamptimestamp4字节范围从1970到2038年自动检索但其当前时区并进行转换java.util.Datejava.sql.Timestamp注意①.datetime只能精确到年月日tinestamp可以精确到年月日时分秒后面还有小数点②.建议使用datetime因为timestamp到了2038年就溢出了对数据可能会造成影响即千年虫危机。
(
.表的操作在创建表时首先要使用use 数据库名命令选择要操作的数据库。
例如我要在test_db4中创建表我们首先要在使用test_db4这个数据库