Mysql基础知识

1、数据的定义

数据库是存放数据的仓库,数据库中的数据是按照一定的格式存放的

DBS(数据库系统)
包含DB(数据库)
DBMS(数据库管理系统)

数据库的定义 DB DataBase : 存储数据的仓库。
数据库管理系统 DBMS :科学的存储数据和管理数据
数据库管理员 DBA

数据库排名

2、关系型数据库和非关系型数据库

关系型数据库:Mysql,oracle,SQL server ,SQLite,

关系型数据库最典型的数据结构是表,由二维表及其之间的联系所组成的一个数据组织

关系型数据库  SQL:底层存放数据是二维表的方式,存在硬盘中的。 
非关系型数据库 NOSQL:存放数据库 键值对 存放在内存中。

非关系型数据库:mongoDB、redis

指非关系型的,分布式的,且一般不保证遵循ACID原则的数据存储系统。

 crtl+c 是强制退出

1 window +r  --->运行窗口
 mysql -uroot -p密码 
密码输错 ---
  ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)
出错----  无法连接mysql服务 
ERROR 2003 (HY000): Can't connect to MySQL server on 'localhost' (10061)

2 数据的定义  Data:描述事物信息的符号。
   数据库的定义 DB DataBase :  存储数据的仓库。
   数据库管理系统  DBMS :科学的存储数据和管理数据
   数据库管理员 DBA
3 MySQL简介 :现流行,开源,免费关系型数据库 (sql) 。
   特点 :开源,免费,跨平台
   关系型数据库  SQL:底层存放数据是二维表的方式,存在硬盘中的。 
   非关系型数据库 NOSQL:存放数据库 键值对 存放在内存中。
---------------------------------
mysql 登录命令 mysql -h主机名(localhost 本机的ip 可省略) -u用户名 -p密码
            mysql -hlocalhost -uroot -p密码  
查看IP地址   ---运行窗口 输入ipconfig查看本机的ip 
            mysql -h127.0.0.1 -uroot -p123456
------------------基本操作
注意  1 单词问题   单词不要拼错  
        2 以英文状态下的符号结尾。
        3 引号问题   必须是成对出现,必须英文
        4 数据库命名 建议用英文 ,不能使用数字开头  可以跟数字   不能使用关键字和保留字;
1 show databases;  查看本地一共有多少个数据库  、

2 create database 数据库名;  创建数据库
 Query OK, 1 row affected (0.01 sec);创建成功提示

3 drop database 数据库名;(慎用  --只能删除自己创建的库)删除数据库
  Query OK, 0 rows affected (0.01 sec)  删除成功
   ERROR 1008 (HY000): Can't drop database 'aa'; database doesn't exist 数据库不存在

4 use 数据库名;  使用某个库
   Database changed   数据库 被选择了;
先选择某个表再查看某个表
5 show tables;查看数据库表;

6 ctrl+c  强制退出mysql命令  
----------命令行的基本操作
1 进入某个盘符  盘符名称:
2 查看这个盘符下的内容   dir:
3 进入某个目录  cd 目录名
4 ..返回上级目录   cd ..
笔记

 二、创建Mysql数据库和表 

1、结构化查询语句SQL

查询语句:主要由select 关键字完成,查询语句是SQL 语句中最复杂、功能最丰富的语句。
DML(Data Manipulation Language,数据操作语言) 语句:主要由insert、update和 delete 三个关键字完成。
DDL(Data Definition Language,数据定义语言)语句:主要由create、alter、drop和 truncate 四个关键字完成。
DCL(Data Control Language,数据控制语言)语句:主要grant和revoke 两个关键字完成。
事务控制语句:主要由commit、rollback和savepoint 三个关键字完成。

2、命令行操作数据库

创建:create database 数据库名;
删除 :drop database 数据库名;
查看: show databases
使用数据库:use 数据库名

3、数据表的操作

查看数据库下的数据表:show tables;

创建表:在navicat查询界面下创建表
varchar(数字),这里面的数字为字节数,utf-8,一个汉字三个字节


如果不存在就创建--- IF NOT EXISTS

 
反引号是为了当 出现与关键字重名的情况


 4、数据值和列类型

 

 5、数据字段注释

 

 

show databases;  #显示所有的数据库

create database aa;#创建数据库

drop database aa;#删除数据库

创建表
create table grade1 (
gradeId int(4) not null PRIMARY key,
gradeName varchar(50) null
);
show tables;
使用查询 创建  `subject1`
subjectID int(4) 不允许为空 
subjectNAme varchar(32)
classHour int(4) 
CREATE table if not exists subject1(
subjectId int(4) not null PRIMARY key,
subjectName varchar(3) null,
classHour int(4) not null 
);

创建table 表
create table `table`(
id int(4) not null
);
创建 test
create table test(
id int(4) UNSIGNED NOT null comment '编码'
)comment ='测试表';

create table test1(
id int(4) ZEROFILL not null
);

select * from test;

create table test2(
id int(4) not null PRIMARY key auto_increment
);

create table test3(
id int(4) not null PRIMARY key auto_increment,
sex char(1) not null DEFAULT '0',
age int(4) 
);

create table result(
studentNo int(4) not null comment '学号',
subjectNO int(4) null comment '课程号',
ExamDate datetime comment '考试日期',
studentResult int(4) comment '考试成绩'
);

desc result;

修改表名 
alter table  旧表名  rename as  新表名;
alter table test rename as test4;
添加字段
alter table 表名  add 字段名 列类型 [属性]
desc test4;
alter table test4 add name varchar(32);
修改字段
   ALTER TABLE 表名 MODIFY 字段名 列类型 [ 属性 ]
  modify修改字段类型 例如 varchar 变成 char alter table test4 MODIFY name char(
32);
字段名和属性都可以修改 ALTER TABLE 表名 CHANGE 旧字段名 新字段名 列类型 [ 属性 ] alter table test4 CHANGE name studentname varchar(
4);
删除字段 alter table test4 DROP studentname;

原文地址:https://www.cnblogs.com/foremostxl/p/11336715.html