数据库和表的基本操作

数据库

查看数据库
复制代码
1.查看所有数据库
SHOW DATABASES; 
2.查看数据库信息 
SHOW CREATE DATABASE 数据库名称;
创建数据库
复制代码
CREATE DATABASE 数据库名; 
查看当前使用的数据库
复制代码
SELECT DATABASE(数据库名);
查看当前用户
复制代码
SELECT USER(用户名);
使用数据库
复制代码
USE 数据库名;

在操作数据表之前,使用"USE 数据库名"指定使用的数据库。

删除数据库
复制代码
DROP DATABASE 数据库名;

删除数据库后,数据库中的所有数据都将被清除,原来分配的空间也将被回收!

修改数据库
复制代码
ALTER DATABASE 数据库名称 DEFAULT CHARACTER SET 编码方式 COLLATE 编码方式_bin
复制代码
itcast数据库的编码方式为utf8,将数据库itcast的编码改为gbk
ALTER DATABASE itcast DEFAULT CHARACTER SET gbk COLLATE gbk_bin
示例
复制代码
#创建数据库schoolInfo1
mysql> create database schoolInfo1;  
Query OK, 1 row affected (0.05 sec)
​
#查看所有数据库
mysql> show databases;  
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| ods                |
| performance_schema |
| schoolinfo         |
| schoolinfo1        |
| sys                |
| testdb             |
+--------------------+
​
#删除数据库schoolInfo1
mysql> drop database schoolInfo1;  
Query OK, 0 rows affected (0.13 sec)
​
#使用schoolInfo数据库
mysql> use schoolinfo;  
Database changed

数据表

创建数据表

CREATE TABLE 表名(字段 数据类型 约束条件);

复制代码
create table 表名
(
字段名1,数据类型[完整性约束条件],
字段名2,数据类型[完整性约束条件],
...
字段名n,数据类型[完整性约束条件]
);
复制代码
约束条件:
主键 PRIMARY KEY
非空 NOT NULL
唯一 UNIQUE
默认值 DELETE
外键 FOREIGN KEY
auto_increment自动增长
查看数据表
复制代码
1.查看当前数据库中所有数据表
SHOW TABLE;
2.查看数据表,创建表时的定义语句,以及表的字符编码。
SHOW CREATE TABLE 表名;
查看表结构
复制代码
DESCRIBE 表名;

DESCRIBE语句可以查看表的字段信息,其中包括字段名、字段类型等信息。

删除数据表
复制代码
DROP TABLE 表名;
示例
复制代码
#查看数据表
mysql> show tables; 
Empty set (0.04 sec)
​
#创建班级表classes(id,name)
CREATE TABLE classes(
   id int PRIMARY KEY auto_increment,
   name VARCHAR(10) not null
);
​
# 创建学生表students(id,name,age,height,enrollment_time,allowance,cid)
CREATE TABLE students ( 
    id int PRIMARY key auto_increment,
        name VARCHAR(20) not null,
        age int,
        gender char(1),
        height float,
        enrollment_time date,
        allowance decimal(7,2),
        cid int,
        FOREIGN key (cid) REFERENCES classes(id)
);
​
#创建教师表 teacherInfo
mysql> create table teacherInfo(
    -> id int(4) primary key not null unique key,
    -> num int(10) not null unique key,
    -> name varchar(20) not null,
    -> sex varchar(4) not null,
    -> birthday datetime null,
    -> address varchar(50) null
    -> );
Query OK, 0 rows affected (0.20 sec)
​
#查看表结构
mysql> desc teacherInfo;
+----------+-------------+------+-----+---------+-------+
| Field    | Type        | Null | Key | Default | Extra |
+----------+-------------+------+-----+---------+-------+
| id       | int(4)      | NO   | PRI | NULL    |       |
| num      | int(10)     | NO   | UNI | NULL    |       |
| name     | varchar(30) | YES  |     | NULL    |       |
| sex      | varchar(4)  | NO   |     | NULL    |       |
| birthday | datetime    | YES  |     | NULL    |       |
| address  | varchar(50) | YES  |     | NULL    |       |
+----------+-------------+------+-----+---------+-------+
6 rows in set (0.03 sec)
​
#查看schoolinfo数据库中的所有数据表
mysql> show tables;
+----------------------+
| Tables_in_schoolinfo |
+----------------------+
| classes              |
| students             |
| teacherinfo          |
+----------------------+
3 rows in set (0.00 sec)
​
#删除数据表students
mysql> drop table students;
Query OK, 0 rows affected (0.09 sec)
相关推荐
CQU_JIAKE11 小时前
5.13【A】
数据库·sql
lzhdim11 小时前
SQL 入门 14:SQL 触发器与事件:自动化数据处理
linux·前端·数据库·sql·自动化
环流_11 小时前
redis中hash的应用场景
数据库·redis·哈希算法
@我漫长的孤独流浪11 小时前
医院病房管理系统E-R建模与关系转换
数据库
_codemonster12 小时前
系统分析师系列目录
java·网络·数据库
|_⊙12 小时前
Linux 深入理解文件(Ext2文件系统:下)
linux·服务器·数据库
treacle田12 小时前
达梦数据库-备份与还原-逻辑备份与还原
数据库·达梦数据库逻辑导出导入
许彰午12 小时前
# Oracle数据库无备份强制恢复:SCN不一致、oradebug与ORA-600[2662]
数据库·oracle
lolo大魔王12 小时前
Go 语言原生 SQL 操作 MySQL 超详细全解 + 生产级项目模板(纯官方库无ORM)
数据库·sql·golang
六月雨滴12 小时前
Oracle 数据库 ASM 自动存储管理
数据库·oracle·dba