本学习笔记是照搬慕课网《与MySQL的零距离接触》内容,特此感谢!
1-1 mysql的安装与配置
Windows环境下的MSI安装:
1、安装:
双击MSI文件->用户协议->选择Typical(典型安装)->instal->finish;
2、配置:
配置向导文件(C\\pf\\Mysql\mysqlsever\bin下的mysqlinstaceconfig.exe)->detailed(详细)或者(standard标准)->勾选windows服务和环境变量选项->设置root用户和密码->执行配置选项。
3、mysql的目录结构:
bin目录 存储可执行文件
data目录 存储数据文件
docs 文档
include目录 存储包含的头文件
lib目录 存储库文件
share 错误消息和字符集文件
1-2启动和关闭mysql服务
1、计算机服务启动和关闭:
net start mysql;
net stop mysql;
net restart mysql;
2、使用mysql
登录:
MySQL -D(--database=name 打开指定数据库)--delimiter=name (指定分隔符) -h(--host=name 服务器名称)-p (--password[=name]密码)-P(--Port=端口) --prompt=name(设置提示符) -u(--user=name 用户名)-V (--versiom 版本信息)
#MySQL -uroot -p -P3306 -h172.1.1.200
退出:
MySQL>exit;或者quit;或者\q;
修改MySQL提示符:
连接客户端时: shell>mysql -uroot -proot --prompt 提示符
连上客户端时: MySQL>prompt 提示符
修改说明: \D 完整的日期 \d 当前数据库 \h 服务器名称 \u 当前用户
#MySQL>PROMPT '\u@\h \d' 》》》root@localhost(库名)>
1-3MySQL常用命令
查看版本号: SELECT VERSION();
显示当前日期: SELECT NOW();
显示当前用户 :SELECT USER();
MySQL语句规范:
①关键字和函数名称全部大写;
②数据库名、表名称、字段名称全部用小写;
③sql语句必须以分号结尾。
创建数据库:
CREATE {DATABASE | SCHEMA} [IF NOT EXISTS] db_name [DEFAULT] CHARACTER SET [=] charset_name
#CREATE DATABASE test_usr;
查看数据库:
SHOW {DATABASES | SCHEMAS} [LIKE 'pattern' | WHERE expr]
#SHOW test_usr;
修改数据库:
ALTER {DATABASE | SCHEMA} [db_name] [DEFAULT] CHARACTER SET [=] charset_name;
#修改数据库编码方式 ALTER DATABASE test_usr CHARACTER SET = utf8;
删除数据库:
DROP {DATABASE | SCHEMA} [IF EXISTS] db_name;
{}符号为二选一 []符号为可选可不选
2-1数据类型与数据表的操作
数据类型是指数据列、存储过程参数、表达式和局部变量的数据特征,觉得了数据的存储格式,代表了不同的数据类型。
整型:
TINNYINT (有符号位:-128到127 无符号位: 0到255)
SMALLINT (有符号位 -32768到32767 无符号位0到65536)
MEDIUMINT (有符号位:-2的23次方到2的23次方-1)
INT (有符号位:-2的31次方到2的31次方-1 无符号位:0到2的32次方-1)
BIGINT (有:-2的63位 到2的63位-1 无:2的64位-1)
浮点型:
FLOAT[(M.D)] M是数字的总位数,D是小数点后面的位数。单精度精确大约到7位小数。
DOUBLE[(M,D)]
日期时间型:
YEAR 1(存储需求)
TIME 3
DATE 3
DATETIME 8
TIMESTAMP 4
字符型:
CHAR(M) M个字节,0<=M<=255
VARCHAR(M) L+1个字节,其中L<=M 且0<=M<=65535
TINYTEXT L+1个字节,其中L<2的八次方
TEXT L+2个字节,其中L<2的16次方
MEDIUMTEXT L+3个字节,其中L<2的24次方
LONGTEXT L+4个字节,其中L<2的32次方
ENUM('value1','value2'...) 1或2个字节,取决于枚举值的个数,最多65535个值
SET('value1','value2'...) 1/2/3/4或8个字节,取决于set成员的数目,最多64个成员
2-2 数据表的操作
打开数据库:
USE +库名称; 如,USE test-user;
查看数据库:
SHOW DATABASE;
查看打开的数据库:
SELECT DATEBASE();
创建数据表:
CREATE TABLE [IF NOT EXISTS] table_name (column_name data_type,...);
#CREATE TABLE tb1(
username VACHAR(20),
age TINYINT UNSIGNED,
salary FLOAT(8,2) UNSIGNED);
创建了一个包含名称 年龄 收入的表
查看数据表:
SHOW TABLES [FROM db_name] [LIKE 'pattern'|WHERE expr]
查看数据表的结构:
SHOW COLUMNS FROM tbl_name;
插入数据(写入记录):
INSERT [INTO] tbl_name [(col_name,...)] VALUES(val,...);
#INSERT tbl VALUES ('Tom',25,7886.34); #与表字段完全匹配的数据
INSERT tb1(username,salary) VALUES('Jon',4443); #指定列插入数据(限制为未插入位置允许空值)
查找记录:
SELECT expr,... FROM tbl_name;
2-3修改数据表:
添加单列:
ALTER TABLE tbl_name ADD [COLUMN] col_name column_definition [FIRST | AFTER col_name]
添加多列:
ALTER TABLE tbl_name ADD [COLUMN] (col_name colum_definition,...)
删除列:
ALTER TABLE tbl_name DROP [COLUMN] col_name
添加主键约束:
ALTER TABLE tbl_name ADD [CONSTRAINT [symbol]] PRIMARY KEY [index_tye] (index_col_name,...)
添加唯一约束:
ALTER TABLE tbl_name ADD [CONSTRAINT [symbol]] UNIQUE [INDEX|KEY] [index_name] [index_type] (index_col_name,...)
添加外键约束:
ALTER TABLE tbl_name ADD [CONSTRAINT [symbol]] FOREIGN KEY [index_name] (index_col_name,...) reference_definition
添加/删除默认约束:
ALTER TABLE tbl_name ALTRT [COLUMN] col_name {SET DEFAULT literal |DROP DEFAULT}
删除主键约束:
ALTER TABLE tbl_name DROP PRIMARY KEY
删除唯一约束:
ALTER TABLE tbl_name DROP {INDEX | KEY} index_name
删除外键约束:
ALTET TABLE tbl_name DROP FOREIGN KEY fk_symbol
修改列定义:
ALTER TABLE tbl_name MODIFY [COLUMN ] col_name column_definition [FIRST|AFTER col_name]
修改列名称:
ALTER TABLE tbl_name CHANGE [COLUMN] old_col_name new_col_name column_definition [FIRST | AFTER col_name]
修改数据表名
方法1:ALTER TABLE tbl_name RENAME [TO|AS] new_tbl_name
方法2:RENAME TABLE tbl_name TO new_tbl_name [,tbl_name2 TO new_tbl_name2] ...
- 菜鸟的MySQL学习笔记(五)
7.自定义函数 用户自定义函数(user-defined function,UDF)是一种对MySQL扩展的途径,其用法与内置函数相同.包含了两个必要条件,参数与返回值.没有必然内在联系. 函数可以返 ...
- 菜鸟的MySQL学习笔记(四)
MySQL中的运算符和函数: 1.字符函数: 2.数值运算符与函数: 3.比较运算符与函数: 4.日期时间函数: 5.信息函数: 6.聚合函数: 7.加密函数等: 6-1.字符函数: CONCAT ...
- 菜鸟的MySQL学习笔记(三)
4-1插入记录INSERT INSERT [INTO] tbl_name [(col_name)] {VALUES|VALUE} ({expr|DEFAULT},...), (...), ... ...
- 菜鸟的MySQL学习笔记(二)
3-1约束: 1.约束保证数据的完整性和一致性: 2.约束分表级约束(两个或两个个以上字段的约束)和列级约束(一个字段约束): 3.NOT NULL 非空: PRIMARY KEY ...
- Mysql学习笔记(三)对表数据的增删改查。
正文内容. 这一部分是最简单的,也是最麻烦的.简单是因为其实只包括增删该插四个部分.大体上看,增加数据.删除数据.修改数据.查询数据都不麻烦啊,我们日常都是常用的.这个谁不会呢?以前在培训机构学mys ...
- MySQL学习笔记一
MySQL 学习笔记 一 一.数据库简单介绍 1. 按照数据库的发展时间顺序,主要出现了以下类型数据库系统: Ø 网状型数据库 Ø 层次型数据库 Ø 关系型数据库 Ø 面向对象数据库 上面4中数据库系 ...
- Mysql学习笔记(二)数据类型 补充
原文:Mysql学习笔记(二)数据类型 补充 PS:简单的补充一下数据类型里的String类型以及列类型... 学习内容: 1.String类型 2.列类型存储需求 String类型: i.char与 ...
- Mysql学习笔记(一)数据类型
原文:Mysql学习笔记(一)数据类型 学习内容: Mysql基本数据类型. 1.数字类型.. i.整型 Mysql数据类型 含义(有符号) tinyint(m ...
- 初识mysql学习笔记
使用VMVirtualBox导入Ubuntu后,可以通过sudo apt-get install mysql-server命令下载mysql. 在学习过程中,我遇到了连接不上Xshell的问题.最终在 ...
随机推荐
- Android模拟器操作快捷键
你可以通过模拟器的启动选项和控制台命令来控制模拟环境的行为和特性.一旦模拟器启动,你就可以通过键盘和鼠标来“按” 模拟器的按键,从而操作模拟器.下面的表格总结了模拟器按键可键盘按键之间的映射关系. 模 ...
- 全面解析java注解
一.注解概述 1.学习注解能够读懂别人的代码,特别是框架相关的代码 2.让自己的编程更加简洁,代码更加清晰 3.让别人高看一眼,会使用自定义注解来解决问题 ...
- Android下实现GPS定位服务
1.申请Google API Key,参考前面文章 2.实现GPS的功能需要使用模拟器进行经纬度的模拟设置,请参考前一篇文章进行设置 3.创建一个Build Target为Google APIs的项目 ...
- firefly 问题
1.G:\servers\Python27\Lib\mimetypes.py reload(sys) sys.setdefaultencoding('gb18030') 2.G:\servers\Py ...
- IT软件开发 书籍汇总
数据库: MYSQL -> Effective MySQL 之 SQL 语句最优化 [美] Ronald Bradford 著 李雪锋 译 清华大学出版社 开发书籍 PHP核心技术与最佳实 ...
- SSH电力项目
第一步:创建测试表Elec_Text: create table Elec_Text(textID varchar(50) not null primary key,textName varchar( ...
- Asp.Net 之 基本控件FileUpload上传控件
1.前台代码: <asp:FileUpload ID="FileUpload" runat="server" /> <asp:Button I ...
- next nextval
1 KMP算法中next与nextval值的计算 以上两张图代表了next值的求法,本人总结后做如下叙述: 根据公式可知: next[1]=0 next[2]=1 next[3]的求法根据公式可以直接 ...
- Find security bugs学习笔记V1.0
Find security bugs学习笔记V1.0 http://www.docin.com/p-779309481.html
- Oracle恢复已删除数据
Oracle恢复已删除的数据,主要有两种方法:SCN和时间戳. 一.通过SCN恢复删除且已提交的数据 1.获得当前数据库的scn号 select current_scn from v$database ...