mysql很全的和完整的总结

(1)数据类型


类型


备注


tinyint/smallint/mediumint/int/bigint


1B/2B/3B/4B/8B


float/double


单精度/双精度浮点型


decimal


不会产生精度丢失的单精度/双精度浮点型


date


日期类型


time


时间类型


datetime/TimeStamp


日期时间类型/TimeStamp(登录时间,自己主动填充)


year


年类型


char


定长字符串类型


varchar


可变长字符串类型


tinyblob/blob/mediumblob/longblob


255B/64K/16M/4G大小图片/音乐二进行数据


tinytext/text/mediumtext/longtext


255B/64K/16M/4G大小的文本数据

(2)mysql小知识

①登录

mysql > mysql -u root -p回车

****回车

mysql > exit回车

②创建/使用/查看/删除数据库

create database 数据库名;(以分号结束),SQL命令大写和小写无关

show databases;

use 数据库名;

③改动/备份/恢复数据库数据

备份:c:\> mysqldump -u root -p mydb2 > d:\mydb2.sql回车(可无分号结束)password回车

注意:该SQL命令是MySQL特有的,必须是MySQL环境外运行,即WindowXp环境中运行(退出mysql平台)

恢复:mysql:\> source d:\mydb2.sql;回车(须要分号结束)

注意:该SQL命令是MySQL特有的,必须是MySQL环境中运行。

④MySQL支持数据类型简单介绍

(1)Date/Datetime/TimeStamp,定界符使用‘‘或"",但部份数据库可能不支持"",优先推荐‘‘作为定界符,对于日期类型,MySQL数据库有一个的判段-功能

(2)varchar(变长)/char(定长)

(3)Text(大于65536字符的数据)/Blob(存储二进制多媒体数据,比如Mp3等),该二类型都有四个子类型,依据存储内容的大小进行选择

(4)INT型有带符号和无符号之分,int(5)表示int默觉得5位,假设插入id值,小于5位,左补空格,假设插入id值,大于5位,依照插入值,但必须满足int类型的大小确定

(5)FLOAT(M,D),D表示小数点后的D位,按四舍五入计算,M表示除小数点外的全部位数总和

⑤MySQL改动表和字符集

show variables like ‘character%‘;

set character_set_results=gbk;

(3)MySQL解决中文乱码(XP下)

2种解决方式:

a)在当前MySQLclient改动输入和输出的MySQL环境变量为GBK或GB2312,注意,该种方式仅仅在当前窗体中有效

b)改动MySQL文件夹下的my.ini文件,将client的缺省编码方式改为GBK或GB2312,注意,须要又一次启动MySQL服务

(4)表的增删改操作

a)insert

b)update

c)delete from 或truncate table或drop table

delete from:按行删除表中的全部记录,但会保留表,适合删除数据量不大数据,可按条件删除

truncate table:复制原表结构-〉一次性删除整表 -> 自己主动恢复原表结构,适合删除数据量较大数据,不能按条件删除

drop table:删除表本身

删除记录时,一定要留意表间的关联关系

(5)表的查询操作

(1)select distinct/*/列名 from 表名

(2)select 表达式/对列名加别名 from 表名   NULL+X=NULL

(3)where子句,出如今from后面,where是按行筛选

(4)逻辑运算和关系运算

(5)排序:NULL值为最小,使用order by子句,默认升序,order by子句必须放置在最后

(6)复合函数

①count()函数,统计之用,不统计NULL值

②sum()函数,统计和之用,不要统计非数值,假设统计非数值,返回0

*********************************************************************************************************************************

尽量不要在for/foreach等循环语句中使用sql语句,这样做对数据库的资源是非常大的消耗,假设数据不多的话能够拿全集(join子句)通过PHP进行筛选,或者使用mysql的in()查询。假设表中的数据量非常大的话,使用join进行关联查询相同会拖慢查询效率,此时应该先从A表中查出全部记录,将id组合成字符串,然后使用in()子句在B表中查出对应记录。

时间: 2024-10-16 18:23:03

mysql很全的和完整的总结的相关文章

MySql配置参数很全的Mysql配置参数说明

MySql配置参数 很全的Mysql配置参数说明 1. back_log 指定MySQL可能的连接数量.当MySQL主线程在很短的时间内得到非常多的连接请求,该参数就起作用,之后主线程花些时间(尽管很短)检查连接并且启动一个新线程. back_log参数的值指出在MySQL暂时停止响应新请求之前的短时间内多少个请求可以被存在堆栈中.如果系统在一个短时间内有很多连接,则需 要增大该参数的值,该参数值指定到来的TCP/IP连接的侦听队列的大小.不同的操作系统在这个队列大小上有它自己的限制.试图设定b

MySQl安装全解

这是第二次安装MySql了,第一次安装花了几个小时,理解安装的每个页面,这次光寻找安装包就找了几个,因此感觉有必要做一次全面的安装笔记.(有点浪费时间了,但是感觉很值得)本人系统是window7.安装的MySql的版本是5.1,官网上5.6.20都有了,我对这个版本没啥追求,就选择这个一般得版本吧. 1.安装包 2.双击安装 3.点击下一步(这个由于做笔记是第二遍安装,所以 出现这个界面,不过没关系啦,直接下一步) 4.下一步(选择如图) 5.下一步 6.完成 7.出现安装向导(选择细节安装)

404什么意思,这里有很全的http/FTP状态码

HTTP 1xx-信息提示 这些状态代码表示临时的响应.客户端在收到常规响应之前,应准备接收一个或多个1xx响应. 100-继续. 101-切换协议. 2xx-成功 这类状态代码表明服务器成功地接受了客户端请求. 200-确定.客户端请求已成功. 201-已创建. 202-已接受. 203-非权威性信息. 204-无内容. 205-重置内容. 206-部分内容. 3xx-重定向 客户端浏览器必须采取更多操作来实现请求.例如,浏览器可能不得不请求服务器上的不同的页面,或通过代理服务器重复该请求.

SQL注入语句 (很全)

1.返回的是连接的数据库名and db_name()>02.作用是获取连接用户名and user>03.将数据库备份到Web目录下面;backup database 数据库名 to disk='c:\inetpub\wwwroot\1.db';--4.显示SQL系统版本and 1=(select @@VERSION) 或and 1=convert(int,@@version)--5.判断xp_cmdshell扩展存储过程是否存在and 1=(SELECT count(*) FROM maste

Qt的学习资料比起其它C/C++的GUI组件来说已经算很全的了

Qt的学习资料比起其它C/C++的GUI组件来说已经算很全的了.Google的话能解决很多问题,如果没搜到资料的话,如果不是问题太过具体或者奇葩,那就是搜索方法的问题.中文教程中,Qt学习之路系列很不错,英文版官方Tutorial和自带的API文档已经很完美了(不排除以前QThread用法没更新的那种情况).要说社区的话,KDE社区是很活跃的开发社区(https://forum.kde.org/)还有Qt Center也算一个吧,不过感觉里面解决问题的人很少,找问题还可以(http://www.

拷贝被人的drawRect绘图分类用途、用法很全。

拷贝被人的drawRect绘图分类用途,用法很全.留着.供用时参考 // Only override drawRect: if you perform custom drawing. // An empty implementation adversely affects performance during animation. - (void)drawRect:(CGRect)rect { CGContextRef context = UIGraphicsGetCurrentContext(

IntelliJ IDEA使用教程(很全)

IntelliJ IDEA使用教程(很全) 这个编辑器我就不再多做介绍了.直接开始新建maven hello world 的Java web项目啦 你电脑上得有jdk1.7,或者1.8,然后就是maven3.x吧,再有就是tomcat7以上吧.还得有我这个编辑器.这些是准备条件 下面就直接开始看图啦: 这个我刚刚开始没注意细看,原来web app 的骨架有2个呢, 我一开始一直选择的是第一个,因为搜索的时候,一直以为匹配结果就一个, 后来才发现下面的那个才是我想要的. 所以,你也要注意咯 这个就

svn常用命令详解(很全,很实用)

ubuntu下安装subversion客户端: sudo apt-getinstall subversion subversion-tools 1.检出 svn  co  http://路径(目录或文件的全路径) [本地目录全路径] --username 用户名 --password 密码 svn  co  svn://路径(目录或文件的全路径) [本地目录全路径]  --username 用户名 --password 密码 svn  checkout  http://路径(目录或文件的全路径)

RobotFramework自动化测试框架-Selenium Web自动化(三)关于在RobotFramework中如何使用Selenium很全的总结(下)

本文紧接着RobotFramework自动化测试框架-Selenium Web自动化(二)关于在RobotFramework中如何使用Selenium很全的总结(上)继续分享RobotFramework中如何使用Selenium进行自动化测试. 本文章节目录: 1.Get Value 2.Get Webelements和Get Webelement 3.Get Window Titles 4.Go Back 和 Go To 5.Get List Items 6.Get Selected List