S2_SQL_第二章
第二章:初始mySql
2.1:mySql简介
2.1.2:mysql的优势
运行速度块,体积小,命令执行的块
使用成本低,开源的
容易使用
可移植性强
2.2:mysql的配置
2.2.1:端口配置
2.2.2:默认字符集设置
Standard Charter Set(标准字符集):包括除AsCII之外的很多语言,当需要使用到这些字符,就配置这种
Best Support For Multilngualism:支持多语言最好的字符集:默认UTF-8
Manual SelectedDufault :可以手动设置的字符集
2.2.3:将mysql的bin目录写入环境变量
2.2.4:root账号密码设置
2.3:命令行连接mySql
2.3.1:检查是否启动服务
步骤:计算机-----管理------服务和应用程序-------服务---搜索mysql右键启动服务
2.3.2:命令行方式连接数据库
步骤:进入dos命令:mysql --u root –p 回车输入密码即可
2.4:命令行方式操作mysql数据库
2.4.1:mysql的数据库类型
系统数据库
Information-Schema:主要存储的是系统的一些数据库对象
Performance-schema:主要存储的是数据库服务新能的参数
Mysql:主要存储系统的用户权限信息
Test:mysql数据库管理系统的自动的测试数据库,任何用户都可以使用
用户数据库
用户根据实际需求创建的数据库
2.4.2:操作数据库
- 创建数据库:create database 数据库名;
- 查看数据库:show databases;
- 选择使用数据库:use 数据库名;
- 删除数据库:drop database 数据库名;
2.5:sqlYog管理工具
2.5.1:通过sqlyog连接mysql
1:登录mysql
2:连接mysql
2.5.2:使用sqlyog工具创建数据库
1:通过操作向导创建数据库
步骤:右键资源管理器的空白处:创建数据库
2:通过sql语句创建数据库
步骤:在query的窗口输入sql语句。然后快捷键F11完成执行创建数据库任务。
2.6:使用sql语句操作数据库
2.6.1:回顾结构化查询语言
DMl(数据操作语言):用来插入,修改,删除表总的数据,如insert,update,delete
DDL(数据定义语言):在数据库中用来创建或者删除对象的语言,如create drop,alter等语句
DQL(数据查询语言):用来对数据库的数据进行查询的语言,如select
DCL(数据控制怨言):用来控制数据库的组件,存取权限
2.6.2:数据类型
- 数值类型
|
数据类型 |
字节数 |
|
TINYINT((M)) |
1字节 |
|
SMALLINT(M) |
2字节 |
|
MEDUMINT(M) |
3字节 |
|
INT(M) |
4字节 |
|
FLOAT(M,D) |
4字节 |
|
DOUBLE(M,D) |
8字节 |
|
DECIMAL(M,D) |
M+2字节 |
INT(4) ZEROFILL: 表示此列的宽度必须是4位数,如果不足4位的,在前面添加0 。超出4位了,以实际为准
2:字符串类型
|
数据类型 |
字节 |
说明 |
|
CHAR(M) |
M字节 |
固定长度的M为0-255 |
|
VARCHAR(M) |
可变长度的 |
可变长度的M为0-65535 |
|
TINYTEXT |
0-255 |
微型文本串 |
|
TEXT |
0-65535 |
文本串 |
3:日期类型
|
数据类型 |
格式 |
|
DATE |
YYYY-MM——DD |
|
DATETIME |
YY-MM-DD hh:mm:ss |
|
TIME |
Hh:mm:ss |
|
TIMESTAMP |
YYYYMMDDHHMMSS |
|
YEAR |
YYY格式的年份 |
2.6.3:创建表
1:语法
CREATE TABLE [IF NOT EXISTS] 表名(
字段1 数据类型[字段属性] [ 约束] [索引] [注释],
字段1 数据类型[字段属性] [ 约束] [索引] [注释]
)[表类型] [表字符集] [注释];
例:CREATE TABLE `Student`(
`StudentNO` INT(4) ZeroFill PRIMARY KEY,
Name CHAR(10),
);
2:字段的约束及属性
|
字段属性,约束名 |
关键词 |
说明 |
|
非空约束 |
NOT null |
表示不能为空 |
|
默认约束 |
DEFAULT |
给予字段默认值,在不填写值的情况下 |
|
唯一约束 |
UNIQUE KEY(UK) |
设置改字段的唯一值,运行为空,单只能一个空值 |
|
主键约束 |
PRIMARY KEY(PK) |
设置改字段为主键,可以作为唯一的标识,比如学号 |
|
外键约束 |
FPREIGN KEY(FK) |
外键约束,用于连个表关联,需要制定引用的主表字段 |
|
自动增长 |
AUTO_INCREMENT |
设置改类自动增长默认加1,一般用于主键,可以设置初始值和增长率 |
例如:
单字段主键(定义字段时,设置)
CREATE TABLE [IF NOT EXISTS] 表名(
字段1 数据类型PRIMARY KEY,
);
定义完所有字段再设置
单字段主键(定义字段时,设置)
CREATE TABLE [IF NOT EXISTS] 表名(
字段1 数据类型,
[CONSTRSINT<约束名>] PRIMARY KEY[l列名]
);
CREATE TABLE student(
`studentId` INT(4),
PRIMARY KEY(`studentId `)
);
多字段联合主键
CREATE TABLE student(
`studentId` INT(4),
PRIMARY KEY(`studentId `,name) //联合主键
);
3:注释
CREATE TABLE student(
`studentId` INT(4) COMMENT ‘编号’,
)COMMENT =’测试表’;
4:编码格式设置
CREATE TABLE student(
)CHARSET =’字符集全名’;
2.6.4:查看表
SHOW TABLES;
查看表详细信息
DESCRIBE 表名;或者DESC 表名;
删除表
DROP TABLE [ IF EXISTS ] 表名; DROP TABLE `student`;
2.7:mySql的存储引擎
2.7.1:常用的存储引擎
|
功能 |
InnoDB· |
MyISAM |
|
支持事务 |
支持 |
不支持 |
|
支持全文索引 |
不支持· |
支持 |
|
外键约束 |
支持 |
不支持 |
|
表空间大小 |
较大 |
较小 |
|
数据行锁定 |
支持 |
不支持 |
MyISAM存储引擎:不支持事务,不支持外键,访问速度较快,因此不需要事务处理,一访问为主适应改引擎
InnDB引擎:在事务上面有优势,支持具有提交,回滚,奔溃恢复能力的事务安装,比前者多占用空间,需要进行频繁的删除和更新,对事务完整性要求交稿,需要实现并发控制,适合于改存储引擎。
2.7.2:操作默认的存储引擎
语法:
Show VAARIABLES LIKE ‘storage_engine%’;like后面加的是要查询的关键词
如果修改存储引擎,可以通过配置向导,修改配置文件my.ini
Default-storage-engine=InnoDB
2.7.3:自定表的存储引擎
Create TabLE 表名(
)ENGINE=存储引擎; l例如:ENGINE=MyISAM
2.7.4:mySQL的数据文件
1:数据文件存储位置
一般在:c:\ProframDAta\Mysql\Mysql Server 5.5 \data\
可以通过修改my.ini配置文件来修改路径
2:myISAM表类型文件
进入enginedb文件,找到类型为myISAM的标的myISAM数据文件,扩展名为:frm MYI
MYD
Frm:表结构定义文件,主要存放源数据,包括表结构的定义信息,与存储引擎无关,任何类型都有一个这个文件
MYI索引文件,存放索引的信息,每个mySAIM表都有一个此文件,存放位置和frm相同
MYD文件:数据文件。存放表的数据文件
2.8:mysql系统帮助
2.8.1:如果查看mysql的帮助
HELP查询内容;
可以通过help Contents命令查看帮助文档的列表。
查看具体内容:HELP Data Types; //查看所有的类型
如要进一步查看某个类型:HELP INT; //即可
查询创建表:HELP create TABlE; //如果创建表
S2_SQL_第二章的更多相关文章
- ASP.NET MVC with Entity Framework and CSS一书翻译系列文章之第二章:利用模型类创建视图、控制器和数据库
在这一章中,我们将直接进入项目,并且为产品和分类添加一些基本的模型类.我们将在Entity Framework的代码优先模式下,利用这些模型类创建一个数据库.我们还将学习如何在代码中创建数据库上下文类 ...
- 《Django By Example》第二章 中文 翻译 (个人学习,渣翻)
书籍出处:https://www.packtpub.com/web-development/django-example 原作者:Antonio Melé (译者注:翻译完第一章后,发现翻译第二章的速 ...
- Jenkins入门系列之——02第二章 Jenkins安装与配置
2014-12-08:已不再担任SCM和CI的职位,Jenkins的文章如无必要不会再维护. 写的我想吐血,累死了. 网页看着不爽的,自己去下载PDF.有问题请留言! Jenkins入门系列之——03 ...
- Python黑帽编程 2.0 第二章概述
Python黑帽编程 2.0 第二章概述 于 20世纪80年代末,Guido van Rossum发明了Python,初衷据说是为了打发圣诞节的无趣,1991年首次发布,是ABC语言的继承,同时也是一 ...
- 《Entity Framework 6 Recipes》翻译系列 (3) -----第二章 实体数据建模基础之创建一个简单的模型
第二章 实体数据建模基础 很有可能,你才开始探索实体框架,你可能会问“我们怎么开始?”,如果你真是这样的话,那么本章就是一个很好的开始.如果不是,你已经建模,并在实体分裂和继承方面感觉良好,那么你可以 ...
- Asp.Net MVC4 + Oracle + EasyUI 学习 第二章
Asp.Net MVC4 + Oracle + EasyUI 第二章 --使用Ajax提升网站性能 本文链接:http://www.cnblogs.com/likeli/p/4236723.html ...
- 数据结构与算法分析C++表述第二章编程题
把昨天看的第二章巩固一下,做一做编程习题. 2.6: 第一天交2元罚金,以后每一天都是前一天的平方,第N天罚金将是多少? 这个题目和2.4.4-3介绍的幂运算基本一致.若按相同的递归思路分析,比那个问 ...
- 【vue.js权威指南】读书笔记(第二章)
[第2章:数据绑定] 何为数据绑定?答曰:数据绑定就是将数据和视图相关联,当数据发生变化的时候,可以自动的来更新视图. 数据绑定的语法主要分为以下几个部分: 文本插值:文本插值可以说是最基本的形式了. ...
- Java语言程序设计(基础篇)第二章
第二章 基本程序设计 2.2 编写简单的程序 1.变量名尽量选择描述性的名字(descriptive name). 2.实数(即带小数点的数字)在计算机中使用一种浮点的方法来表示.因此,实数也称为浮点 ...
随机推荐
- Java内存模型_顺序一致性
数据竞争: 当程序未正确同步时,就会存在数据竞争.java内存模型规范对数据竞争的定义如下: 在一个线程中写一个变量 在另一个线程读同一个变量 而且写和读没有通过同步来排序 如果程序是正确同步的,程序 ...
- 走近RDD
RDD(Resilient Distributed Datasets)弹性分布式数据集.RDD可以看成是一个简单的"数组",对其进行操作也只需要调用有限的"数组" ...
- C#构造函数、操作符重载以及自定义类型转换
构造器 构造器(构造函数)是将类型的实例初始化的特殊方法.构造器可分为实例构造器和类型构造器,本节将详细介绍有关内容. 实例构造器 顾名思义,实例构造器的作用就是对类型的实例进行初始化.如果类没有显示 ...
- java开发3轮技术面+hr面 面经(MT)
一直没打理博客园 发现博客园阅读量好大,就把前段时间写的一个面经也搬过来咯,大家一起加油.... 作者:小仇Eleven 链接:https://www.nowcoder.com/discuss/37 ...
- 基于NIOS-II的示波器:PART3 初步功能实现
本文记录了在NIOS II上实现示波器的第三部分. 本文主要包括:硬件部分的BRAM记录波形,计算频率的模块,以及软件部分这两个模块的驱动. 本文所有的硬件以及工程参考来自魏坤示波仪,重新实现驱动并重 ...
- Python并发编程协程(Coroutine)之Gevent
Gevent官网文档地址:http://www.gevent.org/contents.html 基本概念 我们通常所说的协程Coroutine其实是corporate routine的缩写,直接翻译 ...
- JavaScript 的使用基础总结②DOM
HTML DOM 通过 HTML DOM,可访问 JavaScript HTML 文档的所有元素. 当网页被加载时,浏览器会创建页面的文档对象模型(Document Object Model). HT ...
- 第二次项目冲刺(Beta阶段)--第四天
一.站立式会议照片 二.项目燃尽图 三.项目进展 队员 ID 贡献比 王若凡 201421123022 20% 吕志哲 201421123021 16% 欧阳勇 201421123026 16% 卢 ...
- JFrame常用属性设置模板
最近在学习Swing,在各种demo中都需要构建JFrame,于是我决定把构建JFrame的代码贴上来,以后就直接复制粘贴了. public static void main(String[] arg ...
- 201521123074 《Java程序设计》第3周学习总结
1.本周学习总结 用百度脑图画了一张,点开图片全屏就可以看清楚了 脑图链接 2.书面作业 Q1.代码阅读 以下代码可否编译通过?哪里会出错?为什么?尝试改正? 如果创建3个Test1对象,有内存中有几 ...