mysql知识点总结归纳

合集下载

MySQL(二)数据库数据类型详解

MySQL(二)数据库数据类型详解

MySQL(⼆)数据库数据类型详解 序⾔ 今天去健⾝了,感觉把⾝体练好还是不错的,闲话不多说,把这个数据库所遇到的数据类型今天统统在这⾥讲清楚了,以后在看到什么数据类型,咱度应该认识,下⾯就跟着我的节奏去把这个拿下吧。

---WZY⼀、数据类型 MySQL的数据类型有⼤概可以分为5种,分别是整数类型、浮点数类型和定点数类型、⽇期和时间类型、字符串类型、⼆进制类型。

现在可以来看看你对这5种类型的熟悉程度,哪个看起来懵逼了,那就说明⾃⼰哪个不熟悉,不理解。

注意:整数类型和浮点数类型可以统称为数值数据类型,这不难理解。

数值数据类型 整数类型:TINYINT、SMALLINT、MEDIUMINT、INT、BIGINT 浮点数类型:FLOAT、DOUBLE 定点⼩数:DECIMAL ⽇期/时间类型 YEAR、TIME、DATE、DATETIME、TIMESTAMP 字符串类型 CHAR、VARCHAR、TEXT、ENUM、SET等 ⼆进制类型 BIT、BINARY、VARBINARY、BLOB 1、整数类型 不管你学什么语⾔,在基础⽅⾯,都应该知道 1个字节= 8位⼆进制数。

每个类型的取值范围也就能够知道,⽐如TINYINT占⽤1个字节,也就是8位,2的8次⽅减1等于255,也就是说如果代表没符号的整数,该取值范围为0~255,如果是有符号的,最⾼位为符号号位,也就是2的7次⽅减1,也就是127,取值范围为-128~127,为什么需要减1,这个问题就需要考虑临界值的问题了。

⽽考虑临界值问题⼜有需要讨论原码补码反码的知识,这些度不是我们讨论的重点,所以在这就⾃⾏百度。

给出⼀张范围表,给⼤家做参考。

不同整数类型的取值范围 根据⾃⼰所需去选取不同的类型名称, 例如: CREATE TABLE aaa( id INT(10) PRIMARY KEY, age INT(6) ); 这个例⼦中INT(10)、INT(6) 括号中的数字表⽰的是该数据类型指定的显⽰宽度,指定能够显⽰的数值中数字的个数。

数据库MySQL常用函数大全

数据库MySQL常用函数大全

数据库MySQL常用函数大全一、数学函数ABS(x) 返回x的绝对值BIN(x)返回x的二进制(OCT返回八进制,HEX返回十六进制)CEILING(x) 返回大于x的最小整数值EXP(x)返回值e(自然对数的底)的x次方FLOOR(x)返回小于x的最大整数值GREATEST(x1,x2,...,xn)返回集合中最大的值LEAST(x1,x2,...,xn) 返回集合中最小的值LN(x) 返回x的自然对数LOG(x,y)返回x的以y为底的对数MOD(x,y) 返回x/y的模(余数)PI()返回pi的值(圆周率)RAND()返回0到1内的随机值,可以通过提供一个参数(种子)使RAND()随机数生成器生成一个指定的值。

ROUND(x,y)返回参数x的四舍五入的有y位小数的值SIGN(x) 返回代表数字x的符号的值SQRT(x) 返回一个数的平方根TRUNCATE(x,y) 返回数字x截短为y位小数的结果二、聚合函数(常用于GROUP BY从句的SELECT查询中)AVG(col)返回指定列的平均值COUNT(col)返回指定列中非NULL值的个数MIN(col)返回指定列的最小值MAX(col)返回指定列的最大值SUM(col)返回指定列的所有值之和GROUP_CONCAT(col) 返回由属于一组的列值连接组合而成的结果三、字符串函数ASCII(char)返回字符的ASCII码值BIT_LENGTH(str)返回字符串的比特长度CONCAT(s1,s2...,sn)将s1,s2...,sn连接成字符串CONCAT_WS(sep,s1,s2...,sn)将s1,s2...,sn连接成字符串,并用sep字符间隔INSERT(str,x,y,instr) 将字符串str从第x位置开始,y个字符长的子串替换为字符串instr,返回结果FIND_IN_SET(str,list)分析逗号分隔的list列表,如果发现str,返回str在list中的位置LCASE(str)或LOWER(str) 返回将字符串str中所有字符改变为小写后的结果LEFT(str,x)返回字符串str中最左边的x个字符LENGTH(s)返回字符串str中的字符数LTRIM(str) 从字符串str中切掉开头的空格POSITION(substr,str) 返回子串substr在字符串str中第一次出现的位置QUOTE(str) 用反斜杠转义str中的单引号REPEAT(str,srchstr,rplcstr)返回字符串str重复x次的结果REVERSE(str) 返回颠倒字符串str的结果RIGHT(str,x) 返回字符串str中最右边的x个字符RTRIM(str) 返回字符串str尾部的空格STRCMP(s1,s2)比较字符串s1和s2TRIM(str)去除字符串首部和尾部的所有空格UCASE(str)或UPPER(str) 返回将字符串str中所有字符转变为大写后的结果四、日期和时间函数CURDATE()或CURRENT_DATE() 返回当前的日期CURTIME()或CURRENT_TIME() 返回当前的时间DATE_ADD(date,INTERVAL int keyword) 返回日期date加上间隔时间int的结果(int必须按照关键字进行格式化),如:SELECT DATE_ADD(CURRENT_DATE,INTERVAL 6 MONTH); DATE_FORMAT(date,fmt) 依照指定的fmt格式格式化日期date值DATE_SUB(date,INTERVAL int keyword) 返回日期date加上间隔时间int的结果(int必须按照关键字进行格式化),如:SELECT DATE_SUB(CURRENT_DATE,INTERVAL 6 MONTH); DAYOFWEEK(date) 返回date所代表的一星期中的第几天(1~7)DAYOFMONTH(date) 返回date是一个月的第几天(1~31)DAYOFYEAR(date) 返回date是一年的第几天(1~366)DAYNAME(date) 返回date的星期名,如:SELECT DAYNAME(CURRENT_DATE); FROM_UNIXTIME(ts,fmt) 根据指定的fmt格式,格式化UNIX时间戳tsHOUR(time) 返回time的小时值(0~23)MINUTE(time) 返回time的分钟值(0~59)MONTH(date) 返回date的月份值(1~12)MONTHNAME(date) 返回date的月份名,如:SELECTMONTHNAME(CURRENT_DATE);NOW() 返回当前的日期和时间QUARTER(date) 返回date在一年中的季度(1~4),如SELECTQUARTER(CURRENT_DATE);WEEK(date) 返回日期date为一年中第几周(0~53)YEAR(date) 返回日期date的年份(1000~9999)一些示例:获取当前系统时间:SELECT FROM_UNIXTIME(UNIX_TIMESTAMP());SELECT EXTRACT(YEAR_MONTH FROM CURRENT_DATE);SELECT EXTRACT(DAY_SECOND FROM CURRENT_DATE);SELECT EXTRACT(HOUR_MINUTE FROM CURRENT_DATE);返回两个日期值之间的差值(月数):SELECT PERIOD_DIFF(200302,199802);在Mysql中计算年龄:SELECT DATE_FORMAT(FROM_DAYS(TO_DAYS(NOW())-TO_DAYS(birthday)), '%Y')+0 AS age FROM employee;这样,如果Brithday是未来的年月日的话,计算结果为0。

Mysql总结完整版

Mysql总结完整版

一、数据库概述数据库(DataBase,DB):指长期保存在计算机的存储设备上,按照一定规则组织起来,可以被各种用户或应用共享的数据集合。

数据库管理系统(DataBase Management System,DBMS):指一种操作和管理数据库的大型软件,用于建立、使用和维护数据库,对数据库进行统一管理和控制,以保证数据库的安全性和完整性。

用户通过数据库管理系统访问数据库中的数据。

数据库软件应该为数据库管理系统,数据库是通过数据库管理系统创建和操作的。

数据库:存储、维护和管理数据的集合。

二、数据库的安装与配置* 安装* 参照图解* 一路下一步* 卸载1.停止mysql服务net stop mysql 启动mysql服务net start mysql2.卸载mysql3.找到mysql 安装目录下的my.ini datadir="C:/ProgramData/MySQL/MySQL Server 5.5/Data/"* 运行* 安装成功了打开cmd --> mysql -uroot -p你的密码* 修改mysql root用户密码1) 停止mysql服务运行输入services.msc 停止mysql服务或者cmd --> net stop mysql2) 在cmd下输入mysqld--skip-grant-tables 启动服务器光标不动(不要关闭该窗口)3) 新打开cmd 输入mysql -u root -p 不需要密码use mysql;update user set password=password('abc') WHERE User='root';4) 关闭两个cmd窗口在任务管理器结束mysqld 进程5) 在服务管理页面重启mysql 服务密码修改完成* 配置* 参照图解* 到选择字符集时停三、sql概述SQL:Structure Query Language。

MySQL中文参考手册MySQL学习总结-MySQL-API函数描述

MySQL中文参考手册MySQL学习总结-MySQL-API函数描述

MySQL函数描述、学习总结(适用版本:MySQL 3.23.7alpla)1. MySQL API (2)1.1. MySQL C API (2)1.2. C API数据类型 (3)1.3. C API函数概述 (6)1.4. C API函数描述 (9)1.4.1. mysql_affected_rows() (10)1.4.2. mysql_close() (11)1.4.3. mysql_connect() (11)1.4.4. mysql_change_user() (12)1.4.5. mysql_create_db() (13)1.4.6. mysql_data_seek() (14)1.4.7. mysql_debug() (15)1.4.8. mysql_drop_db() (15)1.4.9. mysql_dump_debug_info() (16)1.4.10. mysql_eof() (17)1.4.11. mysql_errno() (18)1.4.12. mysql_error() (19)1.4.13. mysql_escape_string() (20)1.4.14. mysql_fetch_field() (21)1.4.15. mysql_fetch_fields() (22)1.4.16. mysql_fetch_field_direct() (23)1.4.17. mysql_fetch_lengths() (23)1.4.18. mysql_fetch_row() (24)1.4.19. mysql_field_count() (26)1.4.20. mysql_field_seek() (27)1.4.21. mysql_field_tell() (28)1.4.22. mysql_free_result() (28)1.4.23. mysql_get_client_info() (29)1.4.24. mysql_get_host_info() (29)1.4.25. mysql_get_proto_info() (30)1.4.26. mysql_get_server_info() (30)1.4.27. mysql_info() (30)1.4.28. mysql_init() (31)1.4.29. mysql_insert_id() (32)1.4.30. mysql_kill() (32)1.4.31. mysql_list_dbs() (33)1.4.32. mysql_list_fields() (34)1.4.33. mysql_list_processes() (35)1.4.34. mysql_list_tables() (35)1.4.35. mysql_num_fields() (36)1.4.36. mysql_num_rows() (38)1.4.37. mysql_options() (38)1.4.38. mysql_ping() (40)1.4.39. mysql_query() (41)1.4.40. mysql_real_connect() (41)1.4.41. mysql_real_query() (43)1.4.42. mysql_reload() (44)1.4.43. mysql_row_seek() (45)1.4.44. mysql_row_tell() (45)1.4.45. mysql_select_db() (46)1.4.46. mysql_shutdown() (47)1.4.47. mysql_stat() (47)1.4.48. mysql_store_result() (48)1.4.49. mysql_thread_id() (49)1.4.50. mysql_use_result() (50)1.4.51. 为什么在mysql_query()返回成功后,mysql_store_result()有时返回NULL? (51)1.4.52. 我能从查询中得到什么结果? (51)1.4.53. 我怎样能得到最后插入的行的唯一ID? (52)1.MySQL API1.1. MySQL C APIC API代码是随MySQL分发的,它被包含在mysqlclient库且允许C程序存取一个数据库。

MySQL讲解基础知识

MySQL讲解基础知识

客户机
Windows下MySQL的配置
配置步骤: 1. 将下载的 mysql-noinstall-5.1.69-win32.zip 解压至需要安装的位置, 如: C:\Program Files; 2. 在安装文件夹下找到 my-small.ini 配置文件, 将其重命名为 my.ini , 打开进行编辑 , 在 [client] 与 [mysqld] 下均添加一行: default-character-set = gbk 3. 打开 Windows 环境变量设置, 新建变量名 MYSQL_HOME , 变量值为 MySQL 安 装目录路径, 这里为 C:\Program Files\mysql-5.1.69-win32 4. 在 环境变量 的 Path 变量中添加 ;%MYSQL_HOME%\bin; 5. 安装 MySQL 服务, 打开Windows命令提示符, 执行命令: mysqld --install MySQL -defaults-file="my.ini" 提示"Service successfully installed."表示成功;
MySQL脚本的基本组成
2、关键字: MySQL的关键字众多, 这里不一一列出, 这些关键字有自己特定的 含义, 尽量避免作为标识符。 3、语句: MySQL语句是组成MySQL脚本的基本单位, 每条语句能完成特定 的操作, 他是由 SQL 标准语句 + MySQL 扩展语句组成。 4、函数: MySQL函数用来实现数据库操作的一些高级功能, 这些函数大致 分为以下几类: 字符串函数、数学函数、日期时间函数、搜索函数、加 密函数、信息函数。
注意: MySQL语句以分号(;)作为语句的结束, 若在语句结尾不添加分号时, 命令提 示符会以 -> 提示你继续输入(有个别特例, 但加分号是一定不会错的);

mysql数据库总结体会

mysql数据库总结体会

mysql数据库总结体会一、概述MySQL是一个开源的关系型数据库管理系统,由瑞典MySQL AB公司开发,目前属于Oracle公司旗下产品。

MySQL被广泛应用于Web 应用程序的开发中,是最流行的关系型数据库管理系统之一。

二、基本概念1. 数据库:指在一定范围内,按照一定规则组织起来、存储在一起、具有共享性并可供多个用户共同使用的数据集合。

2. 表:指数据库中的数据组织形式,由行和列组成。

3. 字段:表中的列,用来描述表中每个数据项的属性。

4. 记录:表中的行,表示一个完整的数据项。

5. 主键:表中用来唯一标识每条记录的字段或字段组合。

6. 外键:一个表中的字段,它指向另一个表中主键所在列。

三、安装与配置1. 下载MySQL安装包并进行安装;2. 配置MySQL服务端口号和字符集;3. 配置MySQL用户和权限;4. 配置MySQL备份与恢复。

四、基本操作1. 创建数据库:CREATE DATABASE dbname;2. 删除数据库:DROP DATABASE dbname;3. 创建表:CREATE TABLE tablename (column1 datatype,column2 datatype,...);4. 删除表:DROP TABLE tablename;5. 插入数据:INSERT INTO tablename (column1, column2, ...) VALUES (value1, value2, ...);6. 查询数据:SELECT column1, column2, ... FROM tablename WHERE condition;7. 更新数据:UPDATE tablename SET column1 = value1 WHERE condition;8. 删除数据:DELETE FROM tablename WHERE condition;五、高级操作1. 索引:提高查询效率的一种技术,可以在表中某个列上创建索引。

mysql数据库期末总结

mysql数据库期末总结

mysql数据库期末总结一、前言MySQL是一款开源的关系型数据库管理系统(RDBMS),被广泛应用于Web开发、企业级应用等领域。

作为一名学习数据库的学生,我们在本学期的课程中对MySQL数据库进行了深入学习和使用。

在学习的过程中,我对MySQL数据库有了更深刻的认识,并且也掌握了一些基本的MySQL使用技巧。

本文旨在总结本学期学习MySQL数据库的经验与教训,提供给其他学习数据库的同学作为参考。

二、MySQL概述MySQL是一款适用于各种规模的应用程序的数据库管理系统。

它支持多种操作系统(如Linux、Windows、Mac OS)和多种编程语言(如Java、Python、PHP)的接口。

MySQL 以其高性能、可靠性和用户友好性而备受推崇。

1. 数据库系统MySQL是一种基于客户-服务体系架构的数据库系统。

它由一个客户端程序和一个服务器程序组成。

客户端程序通过与服务器进行通信来发送和接收数据。

2. 数据库管理系统MySQL是一种关系型数据库管理系统(RDBMS),它将数据组织成表格(表)的形式。

每个表由一组行(记录)组成,每行由一组列(字段)组成。

表格是数据库的核心组成部分,用于存储和管理数据。

3. SQL语言MySQL使用SQL(Structured Query Language)作为其标准查询语言。

SQL是一种用于操作关系型数据库的语言,它包含了一系列命令和语法规则。

通过使用SQL语言,我们可以对数据库进行增删改查的操作。

三、MySQL安装与配置在学习MySQL之前,我们首先需要安装和配置MySQL数据库。

以下是一些关于MySQL 安装和配置的经验总结:1. 安装MySQLMySQL提供了各种版本的安装程序,我们可以选择适合自己操作系统的版本进行安装。

安装过程中可以根据提示完成基本设置,如指定安装目录、设置管理员密码等。

2. 配置MySQL安装完成后,我们需要对MySQL进行配置。

首先,我们可以编辑f文件来修改MySQL的配置。

MySQL数据库基本操作

MySQL数据库基本操作

删除表:
drop table if exists 数据表名 ;
rename as new_tbl_name
更改表名
Tips:
1) 要把表中的数据全部删除才能使用 alter 语句修改表列。 2) 用 modify···语句修改字段属性,与其说是修改不如说是重定义属性,原先属性不
插入数据: 使用 insert···value 语句插入数据:
属性 create_definition 语句的具体参数
参数
说明
col_name
字段名(列名)
type
字段类型(数据类型)
not null | null
指出该列是否允许为空值,系统默认一般允许为空 值,当不允许为空值的时候必须使用 not null
删除数据库:
drop database if exists 数据库名 ; Tips:
通过 delete 语句删除数据
value ( 值|default,··· ),(···),···:必选项,用于指定需要插入的 数据清单,其顺序和数据类型必须与字段的顺序和数据类型相匹配;
使用 insert···set 语句插入数据: insert low_priority | delayed | high_priority ignore into 数据表名 set 字段 1 = 值|default ,字段 2=值|default,··· on duplicate key update 字段名=表达名,··· ;
Tips:
1) 创建的数据库不能与它数据库重名; 2) 名称可用任意字母、阿拉伯数字、下划线和$组成,但不能使用单独的数字; 3) 名称最长为个字符,别名最长为 256 个字符; 4) 不能用 MySQL 关键字作为数据库名、表名; 5) 因为 MySQL 在 Windows 系统中对于库/表名大小写不敏感,而在 Linux 系统下
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

mysql知识点总结归纳
MySQL知识点总结
一、MySQL简介
MySQL是一种关系型数据库管理系统,常用于Web应用程序的后台数据存储。

它是开源软件,具有高性能、高可靠性和易于使用的特点。

以下是MySQL的一些重要知识点。

二、数据库的创建和删除
1. 创建数据库:使用CREATE DATABASE语句可以创建一个新的数据库。

例如:CREATE DATABASE mydb;
2. 删除数据库:使用DROP DATABASE语句可以删除一个数据库。

例如:DROP DATABASE mydb;
三、数据表的创建和删除
1. 创建数据表:使用CREATE TABLE语句可以在数据库中创建一个新的数据表。

例如:CREATE TABLE students (id INT, name VARCHAR(50), age INT);
2. 删除数据表:使用DROP TABLE语句可以删除数据库中的一个数据表。

例如:DROP TABLE students;
四、数据表的基本操作
1. 插入数据:使用INSERT INTO语句可以向数据表中插入一条新的记录。

例如:INSERT INTO students (id, name, age) VALUES
(1, '张三', 18);
2. 查询数据:使用SELECT语句可以从数据表中查询记录。

例如:SELECT * FROM students;
3. 更新数据:使用UPDATE语句可以更新数据表中的记录。

例如:UPDATE students SET age=20 WHERE id=1;
4. 删除数据:使用DELETE FROM语句可以从数据表中删除记录。

例如:DELETE FROM students WHERE id=1;
五、数据表的约束
1. 主键约束:PRIMARY KEY约束用于唯一标识数据表中的记录。

例如:CREATE TABLE students (id INT PRIMARY KEY, name VARCHAR(50), age INT);
2. 唯一约束:UNIQUE约束用于确保数据表中的某个列的值是唯一的。

例如:CREATE TABLE students (id INT, name VARCHAR(50) UNIQUE, age INT);
3. 非空约束:NOT NULL约束用于确保数据表中的某个列的值不为空。

例如:CREATE TABLE students (id INT, name VARCHAR(50) NOT NULL, age INT);
4. 外键约束:FOREIGN KEY约束用于确保数据表中的某个列与另一个数据表中的列具有引用关系。

例如:CREATE TABLE orders (order_id INT, customer_id INT, FOREIGN KEY (customer_id) REFERENCES customers(customer_id));
六、数据表的索引
1. 索引的作用:索引可以加快数据表的查询速度,因为它可以帮助数据库系统快速定位到符合条件的记录。

2. 创建索引:使用CREATE INDEX语句可以创建索引。

例如:CREATE INDEX idx_name ON students (name);
3. 删除索引:使用DROP INDEX语句可以删除索引。

例如:DROP INDEX idx_name ON students;
七、数据表的备份和恢复
1. 数据表的备份:使用mysqldump命令可以备份整个数据库或指定的数据表。

例如:mysqldump -u username -p database_name > backup.sql;
2. 数据表的恢复:使用mysql命令可以从备份文件中恢复数据表。

例如:mysql -u username -p database_name < backup.sql;
八、数据表的优化
1. 使用合适的数据类型:选择合适的数据类型可以减小数据表的存储空间,提高数据库的性能。

2. 创建合适的索引:根据查询的需求,创建合适的索引可以加快数据表的查询速度。

3. 避免过多的连接查询:连接查询是比较耗时的操作,尽量避免过多的连接查询语句。

4. 定期清理无用数据:定期清理无用的数据可以减小数据表的大小,
提高数据库的性能。

九、数据表的安全性
1. 使用合适的用户名和密码:选择一个复杂的用户名和密码可以增加数据库的安全性。

2. 设置合适的权限:根据用户的需求,设置合适的权限可以限制用户对数据库的操作范围,提高数据库的安全性。

十、常见问题解决方法
1. 乱码问题:在创建数据库和数据表时,使用合适的字符集和校对规则可以避免乱码问题。

2. 性能问题:使用EXPLAIN语句可以分析查询语句的执行计划,找出性能瓶颈并进行优化。

以上是MySQL的一些重要知识点总结,包括数据库的创建和删除、数据表的创建和删除、数据表的基本操作、数据表的约束、数据表的索引、数据表的备份和恢复、数据表的优化、数据表的安全性以及常见问题解决方法。

希望对大家理解和使用MySQL有所帮助。

相关文档
最新文档