赞
踩
目录
注意:decimal中的指定的M长度,不包括负号和小数点;若指定的D为0,则不保存小数点和小数部分(decimal表示的为整数) 。
上述常用类型为:tinyint、int、bigint、decimal(表示小数)
注:对于utf8mb4编码集,其中每个字符大小为:1-4字节。简单字符为1个字节,而复杂的字符最多为4个字节,如emj表情。
也就是说1个varchar类型的字段最多可存放的字符数量为: 65535/4=16383(要考虑极端情况)
拓展:
- 文本文件:我们能直接看懂的文件,如:记事本写的日记、Java源代码...等等
- 二进制文件: 只有机器或程序才能读懂,以文本形式打开为乱码,以二进制形式打开为01二进制编码
已知,数据库中有多个表,每个表中存储着多条记录,而每条记录又由多个列构成。
所以,我们要先选择相关数据库,然后再对这个数据库中的表进行相关操作。
因为database()是MySQL内置的一个方法。
其中每个字段后,可用comment进行字段注解。
创建表也可加if not exists校验:create table if not exists 表名(....);和建库时一样的写法。
注:每个表中,都强烈建议设计一个编号字段,类型设为bigint;若有varchar类型,则一定要指定长度。
- -- 创建数据库
- drop database if exists bit_mall;
- create database if not exists bit_mall character set utf8mb4 collate utf8mb4_0900_ai_ci;
-
- -- 选中数据库
- use bit_mall;
-
- -- 建表
-
- -- 商品表
- drop table if exists goods;
- create table if not exists goods(
- goods_id bigint comment'商品编号',
- goods_name varchar(20) comment'商品名',
- unitprice decimal(10,2) comment'商品单价',
- category varchar(10) comment'商品类别',
- provider varchar(50) comment'供应商'
- );
- -- 客户表
- drop table if exists customer;
- create table if not exists customer (
- customer_id bigint comment'客户号',
- name varchar(20) comment'客户姓名',
- address varchar(20) comment'客户住址',
- email varchar(50) comment'客户邮箱',
- gender bool comment'客户性别',
- card_id varchar(18) comment'客户身份证'
- );
- -- 购买表
- drop table if exists purchase;
- create table if not exists purchase (
- order_id bigint comment'购买订单号',
- customer_id bigint comment'客户号',
- good_id bigint comment'商品号',
- nums int comment'购买数量'
- );
-

查看所选择数据库中的所有表:show tables;(所有表,所以为复数)
- -- 查看库中的所有表
- show tables;
查看所选择数据库中的某一个表的结构:desc 表名;
- -- 查看表结构
- -- purchase为表名
- desc purchase;
删除表:drop if exists 表名;
一个drop语句可以删除多个表,表名之间用逗号隔开。
还是那句话:使用drop语句非常危险,要慎之又慎!!!
- -- 删表
- -- goods为表名
- drop table if exists goods;
命令行客户端工具,只执行一些简单的查询或是指令,如果一两句SQL可以搞定就在这里面去执行。
但如果说要编写复杂的SQL,比如表设计,复杂查询等操作,建议大家还是去可视化工具中编写。
当我们在可视化工具中编写好SQL语句后,如何在命令行工具中运行呢?
在编辑器中编写好后,保存为一个sql文件,在命令行工具中使用以下SQL语句均可运行:
\. D:\database\lesson3.sql
END
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。