MySQL数据库建表

MySQL数据库命令窗口建表笔记

一.先建库:smart

CREATE DATABASE [库名];

//建一个名为[库名]的库

show databases;

//查看现在都有哪些库(看看建库成功没)

DROP DATABASE [表名];

//删除[库名]这个库

USE [库名];

//使用[库名]这个库,Database changed 是在使用MySQL或其他数据库管理系统时的一条常见响应信息。

二.再建表

1.建表的语法

CREATE TABLE [表名](
[`列名`] [列的具体定义] [`注释`]//数据类型分为三大类:数值/字符串/时间;
)ENGINE =[存储引擎,默认InnoDB,MyISAM便于数据迁移] DEFAULT CHARSET=[字符集,常用UTF8];//[表的属性信息] 

SHOW ENGINES\G查看有哪些存储引擎的命令

例如:

我要在 MySQL 数据库中建立一个名为 smarthome_user的表,表的内容是:
用户ID (user_id): 主键,自增的整数。
用户名 (username): 字符串。
密码 (password): 字符串,建议使用哈希存储。
邮箱 (email): 字符串。
手机号 (phone_number): 字符串。
注册日期 (registration_date):年月日时分秒的日期时间。

CREATE TABLE `smarthome_user` (
  `user_id` INT NOT NULL AUTO_INCREMENT,
  `username` VARCHAR(255) NOT NULL,
  `password` VARCHAR(255) NOT NULL,
  `email` VARCHAR(255) NOT NULL UNIQUE,
  `phone_number` VARCHAR(20) NOT NULL,
  `registration_date` DATETIME NOT NULL,
  PRIMARY KEY (`user_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

show tables;命令查看有哪些表

DROP TABLE [表名];命令删除表

2.数据的类型

数值(int)

整数类型:

TINYINT

1字节 -128 127 255

SMALLUNT

2字节 -32768 32767 65535

MEDIUMINT

3字节

INTEGER

4字节

BIGINT

8字节

INT

精确的数据类型:通常用来存储价格,精确范围1~65位,小数点的位数最大的长度是三十位。小数点不计入长度中。

DECIMAL

NUMERIC

FLOAT

DOUBLE

字符串(char)

CHAR

长度固定255

VARCHAR

BINARY

保存二进制的数据

VARBINARY

保存二进制的数据

BLOB

TEXT

MEDIUMTEXT

LONGBLOB

LONGTEXT

ENUM

SET

时间类型(DATE)

DATE

年月日

TIME

时分秒

DATETIME

年月日时分秒

TIMESTAMP

时间戳

YEAR

年份

3.查询表的结构

要查询表的数据结构,即表的列名、数据类型、是否允许为空、键信息等,你可以使用 SQL 的 DESCRIBE 命令或者 SHOW COLUMNS 命令。这些命令会返回表的列信息,包括每列的名称、数据类型、是否允许 NULL 值、键信息(如主键、唯一键等)、默认值以及其他可能的列属性。

下面是使用这些命令的示例:

使用 DESCRIBE 命令
sql复制代码

DESCRIBE 表名;

或者简写为:

sql复制代码

DESC 表名;

例如,要查询名为 smarthome_USER 的表的数据结构,你可以执行:

sql复制代码

DESCRIBE smarthome_USER;
使用 SHOW COLUMNS 命令
sql复制代码

SHOW COLUMNS FROM 表名;

例如:

sql复制代码

SHOW COLUMNS FROM smarthome_USER;

这两个命令通常会返回类似下面的结果集:

+-------------+--------------+------+-----+---------+----------------+  
| Field       | Type         | Null | Key | Default | Extra          |  
+-------------+--------------+------+-----+---------+----------------+  
| user_id     | int(11)      | NO   | PRI | NULL    | auto_increment |  
| username    | varchar(255) | NO   |     | NULL    |                |  
| password    | varchar(255) | NO   |     | NULL    |                |  
| phone_number| varchar(20)  | YES  |     | NULL    |                |  
| email       | varchar(255) | YES  | UNI | NULL    |                |  
| registration_date | date   | NO   |     | NULL    |                |  
+-------------+--------------+------+-----+---------+----------------+

在这个结果集中:

  • Field 列显示了列名。
  • Type 列显示了该列的数据类型。
  • Null 列显示该列是否允许 NULL 值。‘NO’ 表示不允许,‘YES’ 表示允许。
  • Key 列显示该列是否是某种键(如 PRIMARY、UNIQUE、INDEX 等)。
  • Default 列显示该列的默认值。
  • Extra 列显示该列的额外信息,如 auto_increment 表示该列是自增的。

这些信息对于了解表的结构以及如何进行数据操作非常有用。

我本次学习的目的是为我的毕业设计建表
数据库名:smarthome
内涵表名:
内涵表名
自习室用户表(smarthome_user)结构:
用户表

自习室座位表(smarthome_seat)结构:
座位表

自习室信息表( smarthome_information)结构:
自习室信息

自习室使用日志表(smarthome_history)结构:
使用日志表

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值