MySQL关于数据库的创建和一些数据类型

启动

开启服务

在使用MySQL之前,要先看MySQL服务是否启动。
方法(1):我的电脑----->属性----->服务------>MySQL服务,如果关闭,选择开启就可以了。
(2):以管理员身份运行cmd,输入net start mysql就可以开启服务了。
用cmd使用MySQL数据库:

mysql -uroot -p
本行输入密码

关于MySQL的编码问题

status命令可以看到数据库的一些基本配置,如果有些编码是utf8有些编码是gbk,那么由于MySQL使用的字符集为utf8而不是gbk,需要对字符集进行更改。找到MySQL的安装目录,打开my.ini,加入一行:`character-set-server=utf8`就好了。输入status命令再次查看,编码全都是utf8了。

数据库相关操作

创建数据库

使用CREATE DATABASE 数据库名;进行创建数据库,如果数据库存在的话,就会报错。;如果使用CREATE DATABASE IF NOT EXISTS 数据库名;,如果该数据库已经存在,则会返回警告信息而非报错。
查看当前服务器下的数据库列表:SHOW DATABASES或者SHOW SCHEMAS。查看当下数据库的定义:SHOW CREATE {DATABASE|SCHEMA} 数据库名;

mysql> CREATE DATABASE Stu1;
Query OK, 1 row affected (0.00 sec)

mysql> CREATE DATABASE IF NOT EXISTS Stu1;
Query OK, 1 row affected, 1 warning (0.00 sec)

mysql> SHOW DATABASES;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| stu1               |
| sys                |
| test               |
+--------------------+
6 rows in set (0.00 sec)

查看Stu1数据库的定义:


mysql> SHOW CREATE DATABASE Stu1;
+----------+---------------------------------------------------------------+
| Database | Create Database                                               |
+----------+---------------------------------------------------------------+
| Stu1     | CREATE DATABASE `Stu1` /*!40100 DEFAULT CHARACTER SET utf8 */ |
+----------+---------------------------------------------------------------+
1 row in set (0.00 sec)

数据表的创建

CREATE TABLE IF NOT EXISTS 表名;

其中添加表的时候需要进行完整性约数,完整性约束在《数据库系统概论》里面是:数据库中数据的正确性、一致性、相容性,但是实际操作中具体是什么样子?先挖个坑。
除了表名之外,其它都需要进行大写

mysql> USE Stu1
database changed
mysql> CREATE TABLE IF NOT EXISTS test2(
    -> name VARCHAR(20) NOT NULL,
    -> age INT NOT NULL,
    -> school VARCHAR(50) NOT NULL
    -> )ENGINE = InnoDB
    -> ;
Query OK, 0 rows affected (0.25 sec)

查看表:
1、DESC 表名;
2、DESCRIBE 表名;
3、SHOW COLUMNS FROM 表名;

mysql> SHOW COLUMNS FROM test2;
+--------+-------------+------+-----+---------+-------+
| Field  | Type        | Null | Key | Default | Extra |
+--------+-------------+------+-----+---------+-------+
| name   | varchar(20) | NO   |     | NULL    |       |
| age    | int(11)     | NO   |     | NULL    |       |
| school | varchar(50) | NO   |     | NULL    |       |
+--------+-------------+------+-----+---------+-------+
3 rows in set (0.00 sec)

使用Navicat Premium可以看到表已经创建成功:
在这里插入图片描述

删除数据库和数据表

一般情况下,普通用户无权删除或者创建数据库,所以要使用root用户登录。在删除数据库或者数据表时,要十分谨慎,如果执行了删除命令,那么所有数据就会消失。
drop命令删除数据库:DROP DATABASE 数据库名;
drop命令删除数据表:DROP TEBLE 表名;

数据库支持的数据类型

数据库支持的数据类型有短整型、整型、长整型、字符串、text、可变字符串、浮点数(总共位数,小数点后几位)等这些。

日期和时间类型

在这里插入图片描述
主要使用的是YEAR类型。

mysql> CREATE TABLE test9(
    -> birth YEAR
    -> );
Query OK, 0 rows affected (0.33 sec)
mysql> INSERT test9 VALUES(2155);
mysql> SHOW COLUMNS FROM test9;
+-------+---------+------+-----+---------+-------+
| Field | Type    | Null | Key | Default | Extra |
+-------+---------+------+-----+---------+-------+
| birth | year(4) | YES  |     | NULL    |       |
+-------+---------+------+-----+---------+-------+
1 row in set (0.00 sec)
mysql> INSERT test9 VALUES(2105);
mysql> SELECT * FROM test9;
+-------+
| birth |
+-------+
|  2155 |
|  2105 |
+-------+
2 rows in set (0.00 sec)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

九久呀

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值