MySql的学习2____基本命令操作数据库&数据库表

时间:2022-03-19 22:14:26

Mysql中把若干个类型形同的表的集合叫做数据库,Mysql服务器管理着多个数据库,每个数据库下面都可以有若干个表。

1.启动和关闭数据库服务器;客户端的登录:

net start mysql80    (注意没有分号)

net stop mysql80  

C:\WINDOWS\system32>net stop mysql80
MySQL80 服务正在停止.
MySQL80 服务已成功停止。


C:\WINDOWS\system32>net start mysql80
MySQL80 服务正在启动 ...
MySQL80 服务已经启动成功。

mysql   -uroot   -p+密码      (注意没有分号)

\q    (没有分号)

 1 C:\WINDOWS\system32>mysql -uroot -p1234567890
 2 mysql: [Warning] Using a password on the command line interface can be insecure.
 3 Welcome to the MySQL monitor.  Commands end with ; or \g.
 4 Your MySQL connection id is 8
 5 Server version: 8.0.15 MySQL Community Server - GPL
 6 
 7 Copyright (c) 2000, 2019, Oracle and/or its affiliates. All rights reserved.
 8 
 9 Oracle is a registered trademark of Oracle Corporation and/or its
10 affiliates. Other names may be trademarks of their respective
11 owners.
12 
13 Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
14 
15 mysql> \q
16 Bye

2.几个基本的数据库操作命令(写在Mysql后面的命令要加上分号,可在CMD下运行):

show databases; 显示所有数据库
create database name; 创建数据库
use databasename; 选择数据库
drop  database dbanme;  删除指定的数据库
flush privileges;  刷新数据库
update user set password=password('123456')where user='root'; 修改密码
show tables; 显示数据库mysql中所有的表
describe user; 显示表mysql数据库中user表的列信息
;  \g   \G 都可以作为命令结束的符号;



exit; 退出MySql的客户端登录
? 命令关键词 : 寻求帮助
# 表示注释



IF EXISTS  和  IF NOT EXISTS在创建和删除数据库时都可以避免错误的产生

3.结构化查询语言(sql)

分类如下:

MySql的学习2____基本命令操作数据库&数据库表

4.1数据库表的创建(属于DDL的一种):

语法如下(反引号来区分保留字和普通字符):

create table [if not exists] `表名`(
    '字段名1' 列类型 [属性][索引][注释],
    '字段名2' 列类型 [属性][索引][注释],
    #...
    '字段名n' 列类型 [属性][索引][注释]
)[表类型][表字符集][注释];CREATE TABLE IF NOT EXISTS `student` (
  `id` int(4) NOT NULL AUTO_INCREMENT COMMENT '学号',
  `name` varchar(30) NOT NULL DEFAULT '匿名' COMMENT '姓名',
  `pwd` varchar(20) NOT NULL DEFAULT '123456' COMMENT '密码',
  `sex` varchar(2) NOT NULL DEFAULT '男' COMMENT '性别',
  `birthday` datetime DEFAULT NULL COMMENT '生日',
  `address` varchar(100) DEFAULT NULL COMMENT '地址',
  `email` varchar(50) DEFAULT NULL COMMENT '邮箱',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8

创建结果如下:

mysql> describe student;
+----------+--------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+----------+--------------+------+-----+---------+----------------+
| id | int(4) | NO | PRI | NULL | auto_increment |
| name | varchar(30) | NO | | 匿名 | |
| pwd | varchar(20) | NO | | 123456 | |
| sex | varchar(2) | NO | | 男 | |
| birthday | datetime | YES | | NULL | |
| address | varchar(100) | YES | | NULL | |
| email | varchar(50) | YES | | NULL | |
+----------+--------------+------+-----+---------+----------------+

4.2Mysql 数据表的类型:

MySql的学习2____基本命令操作数据库&数据库表

4.3数据库表的修改:

  • 修改表名 :
    • ALTER TABLE 旧表名 RENAME AS 新表名
  • 添加字段 :
    • ALTER TABLE 表名 ADD字段名 列属性[属性]
  • 修改字段 :
    • ALTER TABLE 表名 MODIFY 字段名 列类型[属性]
    • ALTER TABLE 表名 CHANGE 旧字段名 新字段名 列属性[属性]
  • 删除字段 :
    • ALTER TABLE 表名 DROP 字段名

           删除表 :  DROP TABLE [IF EXISTS] 表名 

  • IF EXISTS为可选 , 判断是否存在该数据表
  • 如删除不存在的数据表会抛出错误