mysql
文章平均质量分 75
ispotu
IT寻止,coder掘进机
展开
-
navicat mysql查数据库中表名、表数量,字段名、字段数量(持续更新中)
1.查数据库中表数量(红色标记的是常用到的重要的表结构信息表)mysql> use information_schema;Database changedmysql> show tables;+---------------------------------------+| Tables_in_information_schema |+-----------...原创 2017-04-12 16:24:24 · 26534 阅读 · 0 评论 -
Navicat使用技巧(附快捷键)(多年总结,待完善)
1.有时按快捷键Ctrl+F搜某条数据的时候搜不到,但是能用sql查出来,这是怎么回事?Ctrl+F只能搜本页数据,不在本页的数据搜不到,navicat每页默认最多显示1000条数据(这个可自己设置:右下角“限制记录设置”)。在数据多的时候navicat是分页显示的,你可以按右下角的左/右箭头翻到上/下一页。这时候如果数据太多的话,这么翻页找这条数据太麻烦,还是用sql查找出来。2....原创 2017-04-07 21:02:57 · 72949 阅读 · 11 评论 -
linux系统存入mysql的中文数据乱码???? linux版MySQL设置utf-8及其问题大坑
问题背景:在CentOS7版Linux系统中刚安装的mysql,使用时发现,存入的数据中的中文乱码,都显示????。这才发现MySQL刚安装完时忘了设置utf-8了。进入mysql查看:mysql>show variables like '%character%';果然,character_set_database和character_set_resul原创 2017-09-28 16:36:55 · 1162 阅读 · 0 评论 -
ERROR! The server quit without updating PID file (/var/lib/mysql/localhost.localdomain.pid)
问题背景:在CentOS7版Linux系统中刚安装的mysql,使用时发现,存入的数据中的中文乱码。这才发现MySQL刚安装完时忘了设置utf-8了。进入mysql查看:mysql>show variables like '%character%';果然,character_set_database和character_set_results都是latin1,需要改成utf原创 2017-09-28 16:15:17 · 4448 阅读 · 0 评论 -
CentOS7版Linux系统安装mysql详细步骤及问题(亲测通过)
参考:http://www.cnblogs.com/xxoome/p/5864912.html如果出现报错:mysqld_safe error: log-error set to '/var/log/mariadb/mariadb.log', however file don't exists. Create writable for user 'mysql'.则解决方法:输入命令原创 2017-09-25 21:00:48 · 872 阅读 · 0 评论 -
mysql在查询结果列表前添加一列递增的序号列(最简)
SELECT @rownum:=@rownum+1 AS 序号, t_user.* FROM t_user ,(SELECT @rownum:=0) r -- 最简写法1更多写法供参考: ① select (@rowNO := @rowNo+1) AS rowno,uid,uname from (SELECT * FROM t_user ) ; ② select (@原创 2017-09-21 20:40:31 · 25114 阅读 · 7 评论 -
mysql将字符串字段转为数字排序或比大小
mysql里面有个坑就是,有时按照某个字段的大小排序(或是比大小)发现排序有点错乱。后来才发现,是我们想当然地把对字符串字段当成数字并按照其大小排序(或是比大小),结果肯定不会是你想要的结果。这时候需要把字符串转成数字再排序。最简单的办法就是在字段后面加上+0如把'123'转成数字123(以下例子全为亲测):排序:例:方法一:ORDER BY '123'+0;(首推)原创 2017-09-17 01:36:31 · 37681 阅读 · 11 评论 -
主表,从表,外键,主键简述
主键:一般情况下,满足第一范式的表都有一个主键Primary key,用于唯一标示数据库中的一个字段。外键:外键是相对于数据库设计中的参考完整性而言,它与主键之间是彼此依赖的关系。 主表:在数据库中建立的表格即Table,其中存在主键(primary key)用于与其它表相关联,并且作为在主表中的唯一性标识。从表:以主表的主键(primary key)值为外键 (F原创 2017-09-07 14:33:38 · 7724 阅读 · 0 评论 -
MySQL查询优化(收集、总结)
参考:http://blog.csdn.net/u014421556/article/details/52063904转载 2017-07-25 21:59:35 · 492 阅读 · 0 评论 -
mysql判断空与0(持续更新中)
判断NULL:用is null 或者is not null。 sql语句里可以用ifnull函数来处理;判断空字符"":要用='' 或者 。sql语句里可以用if(col,col,0)处理,即:当col为true时(非null,及非'')显示,否则打印0原创 2017-07-20 21:57:06 · 10274 阅读 · 1 评论 -
从服务器出的sql文件导入到本地Navicat报错
版本问题:一般原因就是服务器上mysql或者navicat版本较低,导出来的sql文件的sql语句不兼容本地高版本的。解决思路:找到错误的地方,改成高版本的SQL语法支持的写法。最常见的高低版本区别在于创建表的sql。从服务器上导下来的是这样的:-- ------------------------------ Table structure for tab_user_inf原创 2017-09-21 18:46:33 · 2106 阅读 · 0 评论 -
navicat设置MySQL字段int类型的长度INT(M)
1.varchar类型的长度是指这个字段的字符(字母或汉字)个数。2.数字类型的长度就不是这个意思,更为复杂。int类型:长度的设定值范围1~255(设置0时自动转为11,不设置时自动转为默认的11)(显示宽度),在此范围内任意长度值的字段值范围都是-2147483648~2147483647(即-2³¹-1~2³¹-1)tinyint类型:长度设定值范围1~255(设置0时自动转...原创 2017-10-14 22:57:46 · 34603 阅读 · 1 评论 -
MySQL数据库最大连接数和单次最大写入量
1.最大连接数项目中可能会遇到MySQL: ERROR 1040: Too many connections”的情况。造成这种情况的一种原因是访问量过高,MySQL服务器抗不住,这个时候就要考虑增加从服务器分散读压力;另一种原因就是MySQL配置文件中max_connections值过小。查看mysql的最大连接数:show variables like '%max_connec...原创 2019-07-30 10:28:37 · 6152 阅读 · 1 评论 -
mysql:把IP存进数字类型的字段——查询提速优化
1.在java后端把ip字符串转成long类型的处理工具方法:public static long ip2long(String ip) {String[] p = ip.split("\\.");if (p.length != 4)return 0;int p1 = ((Integer.valueOf(p[0]) << 24) & 0xFF00000...原创 2018-10-16 19:50:38 · 1224 阅读 · 0 评论 -
mysql模糊查询unicode编码的字段的解决方案——mybatis查数据库mysql时对unicode支持问题
1.mysql数据库里的nickname字段内容是经过unicode编码处理后存储的,如:\u73\u74\u61\u72\u7a\u6d\ud83d\udc7f\u20\ud83d\ude04\u20\ud83d\ude03\u20\ud83d\ude13实际明文:starzm原创 2018-09-29 17:22:15 · 6618 阅读 · 0 评论 -
emoji表情等特殊字符处理和存储的两个方案
方案1.改数据库配置使之支持emoji表情等特殊字符,小公司或者个人开发还好,大公司用此方案代价较大。以mysql为例,改配置方法参考:https://blog.csdn.net/u010737354/article/details/52456668 方案2.使用unicode编码(推荐使用)统一标准:入库或入缓存统一对特殊字符unicode编码,从库或缓存取出后统一进行uni...原创 2018-09-21 17:58:36 · 4412 阅读 · 0 评论 -
Mybatis里的${ }与#{ }的使用区别(观止)
动态 SQL 是 mybatis 的强大特性之一,也是它优于其他 ORM 框架的一个重要原因。mybatis 在对 sql 语句进行预编译之前,会对 sql 进行动态解析,解析为一个 BoundSql 对象,也是在此处对动态 SQL 进行处理的。在动态 SQL 解析阶段, #{ } 和 ${ } 会有不同的表现。1. ${ }与#{ }区别#{}:占位符号(参数标记符),将传入的数据...原创 2018-05-03 21:37:02 · 930 阅读 · 0 评论 -
从navicat中导入sql文件过大:Got a packet bigger than 'max_allowed_packet' bytes
失败背景:刚才通过navicat从本地向一个数据库中导入sql文件。第一个sql文件大小为967M,导入成功;第二个sql大小为50.1M,导入失败。1.在navicat中按F6进入mysql的命令界面输入命令: mysql>show VARIABLES like '%max_allowed_packet%';显示:+--------------------------+---原创 2017-08-22 16:18:32 · 17304 阅读 · 8 评论 -
mybatis配置MySQL的批量查询
我的需求是查出每个球队中的助攻数最多的球员信息。最开始使用配置的sql是: select from tab_player where team_id in #{item,jdbcType=VARCHAR} Order By assist desc limit 1 这个SQL只能查出一条记录,显原创 2017-07-11 20:22:40 · 3509 阅读 · 1 评论 -
不联网打开navicat提示2005错误
1.在host(C:\Windows\System32\drivers\etc\hosts)中配置localhost指向127.0.0.1: 127.0.0.1 localhost2.如果还解决不了,在查看mysqld进程启动了没有,不行手动启动:计算机-管理-服务和应用程序-服务-MySQL-启动原创 2017-05-24 10:26:35 · 7822 阅读 · 0 评论 -
将oracle的数据导入到mysql的四种方法
一.Navicat Premium中的数据迁移工具为了生产库释放部分资源,需要将API模块迁移到mysql中,及需要导数据。尝试了oracle to mysql工具,迁移时报错不说,这么大的数据量,用这种简陋的工具不大可靠。意外发现平时用的数据库视图工具Navicat Premium中有数据迁移工具,意外的好用。这个工具本身支持mysql,oracle,sqlLite,原创 2016-05-31 17:55:20 · 67204 阅读 · 12 评论 -
MySQL 数据类型 (Text,number,date)
在 MySQL 中,有三种主要的类型:文本、数字和日期/时间类型。Text 类型:数据类型描述CHAR(size)保存固定长度的字符串(可包含字母、数字以及特殊字符)。在括号中指定字符串的长度。最多 255 个字符。VARCHAR(size)保存可变长度的字符串(可包含字母、数字以及特殊字符)。在括号中指定字符转载 2016-05-31 17:25:45 · 11826 阅读 · 0 评论 -
mysql_建立索引的优缺点
建立索引的优缺点:为什么要创建索引呢? 这是因为,创建索引可以大大提高系统的性能。 第一、通过创建唯一性索引,可以保证数据库表中每一行数据的唯一性。 第二、可以大大加快 数据的检索速度,这也是创建索引的最主要的原因。 第三、可以加速表和表之间的连接,特别是在实现数据的参考完整性方面特别有意义。转载 2016-05-01 20:36:58 · 18607 阅读 · 2 评论 -
mysql查询第n到第m条数据
mysql如何指定查询一张表的查询结果,如最后5行记录和最前5行记录我们以student表为例,里面有三个字段:id,name,age,其中id为主健,为自增,里面共有10条记录,如下所示。mysql> select * from student;+----+------+------+| id | name | age |+----+------+------+| 1 | li转载 2016-04-01 13:46:45 · 6965 阅读 · 0 评论 -
Spring中jdbcTemplate
Spring中jdbcTemplate的用法实例(一)博客分类: springspringspring jdbctemplatejdbc 一、首先配置JdbcTemplate;要使用Jdbctemplate 对象来完成jdbc 操作。通常情况下,有三种种方式得到JdbcTemplate 对象。 第一种方式:我们可以在自己定义的DA转载 2015-12-05 19:16:07 · 444 阅读 · 0 评论 -
linux 下如何进入 mysql 命令行
连接MYSQL: 格式: mysql -h主机地址 -u用户名 -p用户密码 1、例1:连接到本机上的MYSQL 找到mysql的安装目录,一般可以直接键入命令mysql -uroot -p,回车后提示你输密码,如果刚安装好MYSQL,超级用户root是没有密码的,故直接回车即可进入到MYSQL中了,MYSQL的提示符是:mysql> 2、连接到远程主机上的MYSQL 假设远程转载 2015-11-16 16:34:49 · 3454 阅读 · 0 评论 -
mysql中数据类型的长度
mysql中数据类型的长度因为最近要登记一些长度较大的数值,今天才仔细的查看了bigint的范围。以前都忽略了mysql中数据长度的上限问题。 在mysql中创建表时,varchar类型必须指定长度,int类型可以不指定长度。当然,在mysql中使用界面创建表(不使用sql语句创建表),若不指定长度,它会为你指定默认长度,下面对mysql中常见的几种数据类型的默转载 2015-11-13 14:24:12 · 12521 阅读 · 0 评论 -
MySQL数据类型的长度
分析MySQL数据类型的长度 MySQL有几种数据类型可以限制类型的"长度",有CHAR(Length)、VARCHAR(Length)、TINYINT(Length)、SMALLINT(Length)、MEDIUMINT(Length)、INT(Length)、BIGINT(Length)、FLOAT(Length, Decimals)、DOUBLE(Length, Dec转载 2015-11-13 14:27:58 · 853 阅读 · 0 评论 -
MySQL查询当前数据上一条和下一条的记录
如果ID是主键或者有索引,可以直接查找:方法一:查询上一条记录的SQL语句(如果有其他的查询条件记得加上other_conditions以免出现不必要的错误):select * from table_a where id = (select id from table_a where id 查询下一条记录的SQL语句(如果有其他的查询条件记得加上other_condit转载 2015-11-12 13:48:30 · 15832 阅读 · 4 评论 -
MYSQL 与 Oracle 之间的数据类型转换
MySQL Data TypeOracle Data TypeBIGINTNUMBER(19, 0)BITRAWBLOBBLOB, RAWCHARCHARDATEDATE转载 2016-06-02 11:27:40 · 5371 阅读 · 0 评论 -
mysql批量更新数据:mysql驱动连接字符串
mysql批量更新数据:mysql驱动连接字符串要添加:rewriteBatchedStatements=true 完全路径:jdbc.url=jdbc:mysql://localhost:9906/oa?useUnicode=true&characterEncoding=utf-8&autoReconnect=true&failOverReadOnly=fal原创 2016-06-04 17:17:30 · 1364 阅读 · 0 评论 -
快捷设置mysql字符集utf-8
为了避免mysql的gbk编码导致的一些乱码问题,需要设置为utf-8的编码。方法一: 编辑MySql的配置文件1.MySql的配置文件Windows下一般在系统目录下或者在MySql的安装目录下名字叫my.ini,有的版本是my-default.ini ,Linux下一般是 /etc/my.cnf--在 [mysqld] 标签下加上以下内容:de原创 2016-06-16 12:19:51 · 707 阅读 · 0 评论 -
Linux系统MySQL忘记密码,重置密码,忽略表名、列名大小写
再linunx系统刚装的MySQL,忘记曾经设置的密码或者安装过程无法设置密码时,试图用常用的密码猜测,如:1,11,111,1111,11111,111111,123456,000000,1234321等等最简单的默认密码来试探,结果试遍了也不对,还是无法进入mysql。原因是这样的密码可能是你当初设置的密码比较复杂后来给忘了,更可能的原因是你安装过程中没允许设置密码,这样的密码一般是MySQL原创 2017-03-16 15:24:30 · 872 阅读 · 0 评论 -
navicat复制一个表里所有的字段的快捷方式
有时需要复制一个表里的所有的字段用来拼写sql字段 列表,并且还需要以逗号连接。可用sql查:1.这种是以逗号连接的字段列表:select group_concat(COLUMN_NAME) from information_schema.COLUMNS where table_name = '表名';2.直接显示字段,蓝色标记部分可不写SELECT COLUMN_NAME F原创 2017-04-09 23:16:45 · 14119 阅读 · 2 评论 -
navicat里的数据库隐藏不显示——IT寻止
问题描述:最近,发现自己半年前在navicat里建立的数据库不见了,查本地mysql发现 此数据库完好的还在,就是在navicat里隐藏不显示了解决过程:开始怀疑是MySQL的权限问题或者是navicat的权限设置问题。问了身边的同事没解决,然后就在网上搜了一番,居然没一个人说清楚的,只能靠自己了。试着在navicat里又建了一个数据库,重启navicat后,又不见了。感觉应该是navicat原创 2016-11-25 18:22:20 · 26242 阅读 · 8 评论 -
navicat导入sql文件时报错:mysql server has gone away
在向navicat导入数据时,运行sql文件,报错首行信息提示:mysql server has gone away1.首先查看MySQL服务是不是已启动:方法有两种:(1)屏幕下边的任务栏,右键单击——任务管理器(K)(按K键即可)——查看后台进程里有没有mysqld.exe进程或者(2)Ctrl+Alt+Delete——任务管理器——查看后台进程里有没有mysqld.exe进程原创 2017-03-15 18:53:59 · 3113 阅读 · 3 评论 -
MySQL查某字段含指定字符串并且不含另一个字符串的三种查法
例如,要查表中html字段含“加载更多”并且不含“上拉加载更多”。注意:此例中不含字符串“上拉加载更多”中有需要含有的“加载更多”。以下有三种sql的写法,where条件的关键部分为红色标记的三种写法:select * from tab_element WHERE HTML like '%加载更多%' and locate('上拉加载更多',HTML)=0; AND IN原创 2017-03-29 17:23:03 · 23267 阅读 · 0 评论 -
mysql两表联合查询,一对多
t_user表如下cj表如下:要获得的查询结果:解决办法:select cjc.uid,u.uname,cjc.数学,cjc.英语,cjc.语文,u.type from (select uid,max(case subj when '数学' then score else 0 end) 数学, max(case subj when '语文' t原创 2017-03-09 09:50:19 · 31354 阅读 · 3 评论 -
系统权限进入mysql数据库看不到自己建立的数据库的解决办法
1.系统权限无需输入密码进入mysql是,只能看见这两张表:解决办法:cmd进入mysq的bin目录,输入用户名密码来启动mysql,此时权限不一样了:原创 2016-06-17 23:47:33 · 7629 阅读 · 0 评论 -
替换掉mysql数据库指定字段的所有数据的中指定字符串
我想把表t_user中name字段中type=1的所有数据中带有“-但是-”的字符串全部替换成“-”,也即把“-但是”去掉:执行update t_user SET name=REPLACE(name,'-但是-','-') WHERE type=1 ,去掉后原创 2016-12-29 16:15:20 · 6917 阅读 · 1 评论