粗结MySql数据库基础知识点之一
首先弄什么是数据库?
数据库就是用来存储和管理数据的仓库。
数据库存储数据的优点:
1.可存储大量的数据 2.方便检索 3.保持数据的一致性,完整性 4.安全 可共享 5.通过组合分析,可以产生新的数据。
数据库的发展历程:
1.没有数据库,使用磁盘文件来存储数据
2.层次结构模型数据库
3.网状结构模型数据库
4.关系结构模型数据库 (使用二维表格存储数据)
5.关系-对象模型数据库
注:关系模型由关系数据结构,关系操作集合,关系完整体约束三部分组成
MySql是一个关系结构模型数据库。
常见的数据库:
甲骨文:oracle与MySql IBM: DB2 微软:SQLServer 赛尔斯:Sybase
关系型数据库管理系统是由多个数据库+管理员=N个table
一个数据库可以有多个table
表格的创建:
数据库表是一个多行多列的表格 ,创建时需指定表的列数,列名称,列类型。不用指定表的行数,因为行数是没有上限的。
在计算机的CMD中操作数据库:
启动MySql服务器:net start mysql 关闭MySql服务器:net stop mysql
登录MySql:mysql -uroot -p123 -hlocalhost (-u后面是用户名,-r后面是密码,-h后面是服务器主机名,可以省略)
退出MySql:quit或exit
SQL是什么?
SQL是“结构化的查询语言,它是对关系型数据库的操作语言,可以应用到所有关系型数据库中”。
虽SQL可用在所有关系型数据库中,但很多数据库都有属于自己的特有的语法。列如:MySql中的limit语句就是MySql独有的。
语法要求:
SQL语句可单行或者多行书写,以分号结尾,可用空格或缩进增强语句的可读性,关键字不区分大小写,默认显示为大写,建议大写。
DDL:数据定义语言,用来定义数据库对象 ,库,表,列等
DML:数据操作语言,用来定义数据库的记录
DCL:数据控制语言,用来定义访问权限和安全级别
DQL:数据查询语言,用来查询数据记录
DDL:数据定义语言,用来定义数据库对象,库,表,列等
基本操作:
1.查看所有数据库名:show databases
2.切换数据库: use 数据库名
操作数据库
1.创建数据库:create database 数据库名
2.删除数据库:drop database 数据库名
3.修改数据库编码:alter database 数据库名 character set utf8(注:修改数据库编码为utf-8,MySql中不能写-,因此省略)
数据类型:MySql与java一样,也有数据类型,主要应用于列上
int:整型 double:浮点型 注:例如double(5,2)表示最多5位,必须有2位数,即最大数为999.99
decimal:精确小数类型,跟钱有关时使用 char:固定长度字符串类型 varchar:可变长度字符串类型
text:字符串类型 blob:字节类型 date:日期类型 格式为:yyyy-MM-dd time:时间类型 格式为:hh:mm:ss
操作表:
1.创建表
create table 表名(
列名 列类型 (可以还有一些属性),
);
例如:
create table user(
id int,
name varchar(20),
salary double
);
2.查看当前数据库所有表的名称:show tables;
3.查看当前数据库指定表的创建时语句:show create table 表名;
4.查看表的结构(列名列类型特有属性等):desc 表名;
5.删除表:drop table 表名
6.修改表
a.为表添加列:alter table stu add(name varchar(20));
b.为表修改列类型:alter table stu modify gender char(2);
c.为表修改列名:alter table stu change gender sex char(2);
d.为表删除列:alter table stu drop name;
e.修改表名:alter table stu rename to student;
DML:数据操作语言,用来定义数据库中的记录
插入数据:insert into 表名(列名1,列名2) values(值1,值2);
例如:insert into stu(id,name) values(001,'zs');
修改数据:update 表名 set 列名1='值1',列名2='值2 where 条件;
例如:update stu set name='zs' where id=01;
删除数据:delete from 表名 where 条件; 例如:delete from stu where sex='m';
truncate table 表名; 例如:truncate table stu;
注:delete根据条件可以删除表里部分数据,而truncate则是删除表里全部数据
两者都可以删除表里的所有记录,但原理不同:delete 没有truncate效率高
其实truncate属于DDL语句,因为它是先drop table再create table 而且truncate删除的数据记录无法回滚(即无法恢复找回)
但delete删除的数据记录可以回滚。
粗结MySql数据库基础知识点之一的更多相关文章
- MySQL数据库基础
MySQL数据库基础 本文的所有操作是基于CMD环境,MySQL通过在命令行中输入SQL语句对数据库进行操作.配置问题可参考<打通MySQL的操作权限>中的内容,该文算是针对前期的环境配置 ...
- MySQL数据库基础知识及优化
MySQL数据库基础知识及优化必会的知识点,你掌握了多少? 推荐阅读: 这些必会的计算机网络知识点你都掌握了吗 关于数据库事务和锁的必会知识点,你掌握了多少? 关于数据库索引,必须掌握的知识点 目录 ...
- mysql数据库基础的简单操作指南
最近在学习mysql,本文是做的关于mysql学习的笔记,跟大家分享一下,希望对大家学习mysql知识有所助益.mysql现在几乎已经成了网站建设的主流数据库,很多php网站系统都采用了mysql数据 ...
- Mysql数据库基础学习笔记
Mysql数据库基础学习笔记 1.mysql查看当前登录的账户名以及数据库 一.单表查询 1.创建数据库yuzly,创建表fruits 创建表 ) ) ,) NOT NULL,PRIMARY KEY( ...
- Mysql数据库基础操作
Mysql数据库基础操作 在mysql数据库中开启使用tab键补全功能 1)修改主配置文件/etc/mysql/my.cnf(mysql和mariadb目录有些不同) vim /etc/mysql/m ...
- mysql数据库基础-2019-9-10(随堂笔记)
mysql数据库基础 在cmd情况下启动mysql数据库:(配置path环境变量后可忽略) 运行mysql1. 进入mysql路径2. 执行:mysql -uroot -p,安装时的密码 1.数据库& ...
- php面试专题---15、MySQL数据库基础考察点
php面试专题---15.MySQL数据库基础考察点 一.总结 一句话总结: 注意:只写精品 1.mysql定义int(3),那么我存1234就错了么? 不是:无影响:只会影响显示字符的个数:可以为整 ...
- PHP面试 MySQL数据库基础
MySQL数据库基础 MySQL数据类型 整数类型:TINYINT SMALLINT MEDIUMINT INT BIGINT 属性:UNSIGNED 长度:可以为整数类型指定宽度,列 ...
- MySQL数据库--基础简述
MySQL数据库--基础简述 1.15.1 MySQL简介 Mysql是最流行的RDBMS(Relational Database Management System:关系数据库管理系统),特别是在W ...
随机推荐
- TCP协议滑动窗口(一)——控制大批量数据传输速率
窗口大小:TCP头中一个16位的域,表示当前可用接受缓冲区大小.在每个TCP对等段连接初始化时,告诉对方自己的窗口大小(不一定是满额,假如满额65201字节,可能暂时通告5840字节).若客户端接受数 ...
- win32绘图基础
获取设备环境句柄: (1)WM_PAINT消息中: PAINTSTRUCT ps; HDC hdc = BeginPaint(hwnd,&ps); EndPaint(hwnd,&ps ...
- facenet
facenet dl face recognition 一.运行facenet 验证lfw数据集效果: python2.7 src/validate_on_lfw.py ~/dataset/lfw ...
- 如何成为一名出色的Oracle数据库管理员
主要针对Oracle DBA在成长阶段的定位,学习方法等几大方面进行了经典的论述,详细内容请参考下文. 一.定位 Oracle分两大块,一块是开发,一块是管理.开发主要是写写存储过程.触发器什么的,还 ...
- linux使用mount命令挂载、umount命令取消挂载
一.mount挂载目录方式: mount 挂载目录 磁盘目录 二.umout取消挂载目录方式: 1.umout 磁盘目录 2.umout 挂载目录 3.umout 磁盘目录 挂载目录 如下图
- ES6学习之箭头函数
ES6学习笔记--箭头函数 箭头函数一直在用,最近突然想到重新看一下箭头函数的用法,所以这里做一些总结. 箭头函数长这个样子: let fn = a => a++; // fn 是函数名, a= ...
- JS——arguments
1.只在函数中使用 2.返回的是实参的数组 <script> getNum(1, 2);//(2) [1, 2, callee: ƒ, Symbol(Symbol.iterator): ƒ ...
- 打造最强NGINX HTTPS
SSL LABS 检测 完整配置如下 server { listen 443 ssl; server_name xxx.xxxke.com; ssl on; ssl_certificate /xxx/ ...
- (Entity framework 应用篇)把权限判断封装在数据库访问层
这里,我只是以一个例子,说一下简单权限控制,通过这个例子,大家可以设计庞大的权限管理层,把权限控制封装到数据库访问层,这样程序员就不用再写权限判断的代码了 首先,先看看我数据库DBContext的定义 ...
- MarkDown 语法及使用
MarkDown #什么是Markdown - 定义 - markdown 是一款轻量级标记语言,功能没有HTML标记语言那么强大 ,Markdown专注书写! #试用人群: 程序员/等计算机爱好者 ...