数据库操作

操作数据库

数据库>-数据库中的表>-操作数据库中表的数据

1、创建数据库

CREATE DATABASE[IF NOT EXISTS] STUDENT

2、删除数据库

DROP [IF EXISTS] STUDENT

3、使用数据库

USE STUDENT

4、查看数据库

SHOW DATABASES

数据库的列类型

创建数据表

数值类型

字符串类型

日期和时间型数值类型

空值

  • 理解为“没有值”或“未知值”
  • 最好不要使用NULL进行算术运算。

数据字段属性

unsign

  • 无符号的
  • 声明该数据不允许负数

zeroFILL

  • 0填充的
  • 不足位数的用0来填充

Auto_increament

  • 自动增长的,每添加一条数据,自动在一个记录上加1
  • 通常用于设置主键,且为整数类型
  • 可定义起始值和步长

NULL和not null

  • 默认null,既没有擦汗如该列的数值

  • 如果设置为not null,则该列必须有值。

default

  • 默认的
  • 用于设置默认值

创建数据库表

create table [if not exists] `表名`(
   '字段名1' 列类型 [属性][索引][注释],
   '字段名2' 列类型 [属性][索引][注释],
  #...
   '字段名n' 列类型 [属性][索引][注释]
)[表类型][表字符集][注释]; 
-- 目标 : 创建一个school数据库
-- 创建学生表(列,字段)
-- 学号int 登录密码varchar(20) 姓名,性别varchar(2),出生日期(datatime),家庭住址,email
-- 创建表之前 , 一定要先选择数据库

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

-- 查看数据库的定义
SHOW CREATE DATABASE school;
-- 查看数据表的定义
SHOW CREATE TABLE student;
-- 显示表结构
DESC student;  -- 设置严格检查模式(不能容错了)SET sql_mode='STRICT_TRANS_TABLES';
--摘自狂神说公众号

数据表的类型

CREATE TABLE 表名(
)ENGINE = MyISAM (or InnoDB)

-- 查看mysql所支持的引擎类型 (表类型)
SHOW ENGINES

MySQL的数据表类型:MySAM,InnoDB HEAP , BOB , CSV等。

MyISAM与InnoDB的区别

MyISAM:节约空间,运行速度快

InnoDB:安全性,事务性处理及多用户操作数据表


数据表的存储位置

MySQL数据表以文件方式存放在磁盘中

1、包括表文件,数据文件,以及数据库的选项文件

2、位置:Mysql安装目录\data\下存放数据表,目录名对应数据库名,该目录下文件名对应数据表。

注意:
*.frm--表结构定义文件

MYD--数据文件(data)

MYI--索引文件(index)

InnoDB类型数据表只有一个*frm文件,以及上一级目录的ibdata1文件;MyISAM类型数据表对应三个文件。


设置数据表子符集

我们可以为数据库,数据表,数据列设定不同的字符集。

方法:创建时通过命令来设置,

CREATE TABLE 表名() CHARSET=UTF8;

修改删除数据库

修改表(ALTER TABLE)

修改表名:ALTER TABLE 旧表名 RENAME AS 新表名

ALTER TABLE teacher RENAME AS teacher1

添加字段:ALTER TABLE 表名 ADD 字段名 列属性[属性]

ALTER TABLE teacher1 ADD age int[11]

修改字段列属性:ALTER TABLE 表名 MODIFY 字段名 列属性[属性]

ALTER TABLE teacher1 MODIFY age varchar[11]

修改字段名:ALTER TABLE 表名 CHANGE 旧字段名 新字段名 列属性[属性]

ALTER TABLE teacher1 CHANGE age age1 varchar[11]

删除字段:ALTER TABLE 表名 DROP 字段名

:ALTER TABLE teacher1 DROP age1

删除表(DROP TABLE)2

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

注意:在执行创建和删除的操作时,最好加上判断,避免出错。


posted @ 2021-01-03 19:47  胡木杨  阅读(84)  评论(0)    收藏  举报