数据库(Database,简称DB)
概念:长期存放在计算机内,有组织、可共享的大量数据的集合,是一个数据“仓库”
作用:保存、管理数据
数据库总览
关系型数据库(SQL):MySQL、Oracle、SQL Server、SQLite、DB2
非关系型数据库(NOSQL):Redis、MongoDB
数据库管理系统(Database Management System)
数据管理软件,科学组织和存储数据、高效地获取和维护数据
MySQL简介:
概念:是现流行的开源、免费的关系型数据库
特点:免费、开源数据库 ;小巧、功能齐全;使用便捷;可运行于Windows或Linux操作系统;
可适用于中小型甚至大型网站应用
MySQL运行机制:
SQLyog管理工具:可手动操作、管理MySQL数据库的软件工具
特点:易用;简洁;图形化
建表:
显示表结构 desc 表名
显示表创建语句 show create table 表名
列类型:规定数据库中该列存放的数据类型
分为:数值类型;字符串类型;日期和时间型数值类型;NULL值
超出int值范围,不会报错,会去取最大范围的值;可以设置严格检查模式报错;
MySQL命令:
mysql -hlocalhost -uroot -pok//登录MySQL
set passward=password('ok');修改MySQL密码
--MySQL的常用命令
-库级命令:以下的[]意思是可选择的命名,可以有,可以没有
create database [if not exists] school;--建库:--school为库名
drop database [if exists] test;--删除库;--test也是库名
show databases;--查看所有的库
create database test character set 'utf8';--建库时指定字符编码
alter database school character set 'utf8';--修改库的字符编码
use school;--切换到具体的数据库school
--给外部访问赋权
grant all on *.* to 'root' @'%' identified by 'ok';
flush privileges;
--建表语句
Create table [if not exists] [库名.]表名(//写的时候不能有中括号,中括号里的内容可以有,可以没有
列名 列类型(列长度) 列属性,-- 多个字段/列使用,分割
);
--表级操作
show tables [in school];--查看库中所有的表
--建表语句
Create table if not exists subject(
SubjectNo int(11) primary key,
SubjectName varchar(50),
GradeID int(4)
);
desc 表名--查看已建好的表结构
show create table 表名;--查看已建好的表的建表语句(完全版,部分可省略)
drop table 删除表