mysql函数

三、Navicat将远程MySql数据库数据导入本地

こ雲淡風輕ζ 提交于 2019-12-11 13:52:20
1、安装本地的MySql。记住用户名和密码,这里以root,root为例。 2、打开Navicat,新建连接(连接),输入连接名,用户名,密码。确定,连接测试。这里连接名为luzhanshi。这样本地的数据库已经搭建好了。 3、新建数据库,只填一个“数据库名”,其它两项可以不用管。数据库名可以和要远端的一致。这里都是“yxp”。 4、右击要导入数据库,选择数据传输。 异常:如果你是刚刚安装的数据库,并且你在导入数据库的时候包括函数,那么可能在遇到函数到时候会报错: This function has none of DETERMINISTIC, NO SQL, or READS SQL DATA in its declaration and binary logging is enabled (you *might* want to use the less safe log_bin_trust_function_creators variable) [DTF] Finished unsuccessfully 原因: 这是我们开启了bin-log, 我们就必须指定我们的函数是否是 1 DETERMINISTIC 不确定的 2 NO SQL 没有SQl语句,当然也不会修改数据 3 READS SQL DATA 只是读取数据,当然也不会修改数据 4 MODIFIES SQL DATA

[mysql]leetcode627:交换工资(easy)

亡梦爱人 提交于 2019-12-11 10:00:01
题目: case when then else end的用法: --简单Case函数 CASE sex WHEN '1' THEN '男' WHEN '2' THEN '女' ELSE '其他' END --Case搜索函数 CASE WHEN sex = '1' THEN '男' WHEN sex = '2' THEN '女' ELSE '其他' END 代码如下: # Write your MySQL query statement below -- 使用case when then else end语句 update salary set sex = ( case sex when 'm' then 'f' -- 如果是m则改为f else 'm' end -- 如果是f则改为m ) ; 来源: CSDN 作者: _Fast 链接: https://blog.csdn.net/qq_43152052/article/details/103484968

MySQL函数——字符串函数

十年热恋 提交于 2019-12-11 06:01:35
字符串函数 字符串函数主要用来处理数据库中的字符串数据,MySQL中字符串函数有:计算字符串长度函数、字符串合并函数、字符串替换函数、字符串比较函数、查找指定字符串位置函数等。 1.计算字符串字符数的函数和字符串长度的函数 char_length(str)返回值为str所包含的字符个数。一个多字节字符算作一个单字符。 案例:使用char_length函数计算字符串字符个数,SQL语句如下: SELECT CHAR_LENGTH('date'),CHAR_LENGTH('egg'); length(str)返回值为字符串的字节长度,使用utf8(unicode的一种变长字符编码,又称万国码)编码字符集时,一个汉字是3个字符,一个数字或字母算一个字节。 案例:使用length函数计算字符串的长度,SQL语句如下: SELECT LENGTH('date'),LENGTH('egg'); 2.合并字符串函数concat(s1,s2,...)、concat_ws(x,s1,s2,...) concat(s1,s2,...)返回结果为连接参数产生的字符串,或许有一个或多个参数,如有任何一个参数为null,则返回null。如果所有参数均为非二进制字符串,则结果为非二进制字符串。如果自变量中含有任一二进制字符串,则结果为一个二进制字符串。 案例:使用concat函数连接字符串,SQL语句如下:

jquery与php的json交互

好久不见. 提交于 2019-12-10 14:14:22
json PHP jQuery MySQL Ajax 整理两个现成的函数:json_decode、json_encode 说明:其中json_encode 表示把常用的传统的数据类型如对象、数组、关联数组等转成JSON字符串。其实与JAVA里面的那个工具是一样的。而json_decode刚好相反。 解决需求1.修改 整理两个现成的函数:json_decode、json_encode 说明:其中json_encode 表示把常用的传统的数据类型如对象、数组、关联数组等转成JSON字符串。其实与JAVA里面的那个工具是一样的。而json_decode刚好相反。 解决需求1.修改数据表的时候动态生成一个JSON片段。供JS调用。 服务器端的代码: function plan2() { $link = mysql_connect("localhost","root","123") or die("<font color=red>无法建立起来连接。错误信息如下</font>"); mysql_query("SET NAMES gbk"); mysql_select_db("phpcms",$link) or die("<font color=red>在服务器上面无法找到此请确认已建立此DB "); $result = mysql_query("select id,uuid,uuidtable

mysql ------(order by ,聚合函数,group by,limit)

大兔子大兔子 提交于 2019-12-10 14:11:37
-- 1:数据库的查询(排序:order by) -- SELECT * FROM 表名 ORDER BY 排序字段 ASC(升序)|DESC(降序); -- 1.1 使用价格排序:升序 SELECT * FROM product ORDER BY price ASC; SELECT * FROM product ORDER BY price ;-- 默认就是升序 -- 1.2 使用价格排序:降序``````` SELECT * FROM product ORDER BY price DESC; -- 1.3 使用category_id排序:降序 -- 如果是对字符串排序,则使用的是字典顺序: admain about; SELECT * FROM product ORDER BY category_id ASC; -- 1.4 使用pname排序:升序 SELECT * FROM product ORDER BY pname ASC; -- order by 排序只对数字和英文字符串有效,对汉字无效 -- 1.5 在价格排序(降序)的基础上,以分类排序(降序) SELECT * FROM product ORDER BY price DESC, category_id DESC; -- 1.6 显示商品的价格(去重复 distinct),并排序(降序) SELECT

SOL自定义函数

喜欢而已 提交于 2019-12-10 06:28:31
先介绍下MySQL自带的一些函数: 结构:sql --> 结果 #作用 以下都是运行结果 : 字符串相关函数 select concat ( 'zhou' , 'yi' ) ; -- > zhouyi #字符串链接 select concat_ws ( '&' , zhou '' , 'yi' ) ; -- > zhou & yi #指定分割符号进行字符串链接 # FOMRAT ( N , D , locale ) ; N对象,D小数位数,locale可选 select format ( 2019.011 , 1 ) ; -- > 2019.0 #数字格式化 select lower ( 'ZY' ) ; -- > zy # 转小写 ; upper 转大写 select replace ( 'zhouyibaba' , 'zhouyi' , '' ) ; -- > baba# 替换 SELECT left ( 'chinese' , 4 ) ; -- > chin # 左截取 ; right ( str , len ) 右截取 ; substring指定截取 select length ( 'zhouyi' ) ; -- > 6 # 返回长度 select char_length ( "周毅" ) ; -- > 2 # 如果是length返回 6 select ltrim ( '

MySql------基础知识1

血红的双手。 提交于 2019-12-10 05:57:10
MySql------基础知识1 一。 SQL 的 select 语句完整的执行顺序 1.from字句组装来自不同数据源 2.where 字句基于指定 3.group by 划分多个分组 4.使用聚集函数进行计算 5、使用 having 子句筛选分组; 6、计算所有的表达式; 7、select 的字段; 8、使用 order by 对结果集进行排序。 二。Sql聚合函数: 几何函数就是对一组值进行计算并且返回 单一的值的函数,经常与select语句中的group by 字句一同使用 a.ava()平均值,空值被忽略 b.count()返回是的是指定组中的项目个数 c.max ()和min()分别是返回最大值和最小值 e.sum()返回指定数据的和,只能是数字列 f. group by():对数据进行分组,对执行完 group by 之后的组进行聚合函数的运算,计算每一组的值。 最后用having去掉不符合条件的组,having子句中的每一个元素必须出现在select列表中(只针对于mysql) 三。SQL之连接查询(左连接和右链接) 外连接:左连接():以左表作为基准进行查询,左表数据会全部显示出来,如果不匹配则显示为 null; 右连接():以右表作为基准进行查询,右表数据会全部显示出来,如果不匹配则显示为 null; 全连接():先以左表进行左外连接,再以右表进行右外连接

MySQL优化之like关键字

落花浮王杯 提交于 2019-12-10 01:49:28
1.%号不放最左边 无法使用索引了,开头是不确定的,MySQL也无法进行优化了,只能扫描表了。 2.使用覆盖索引 如果业务需要%就放开头我们也没办法,一般情况需求都是这样的,毕竟优化还是为业务服务的。 创建复合索引idx_name_age select name,age from tb where name like '%e%'; 查询是覆盖索引的,起码比全表扫描要好。 如果需要更多字段的数据而不单单是age的话,可以进行两次查询,第一次通过name来获取id(这一步是索引扫描),第二步拿获取来的数据在进行id匹配查询(这一步效率很高,ref或者const)。 LIKE语句 SELECT `column` FROM `table` where `condition` like `%keyword%' 事实上,可以使用 locate(position) 和 instr 这两个函数来代替 一、LOCATE语句 SELECT `column` from `table` where locate(‘keyword’, `condition`)>0 二、或是 locate 的別名 position POSITION语句 SELECT `column` from `table` where position(‘keyword’ IN `condition`) 三、INSTR语句 SELECT

PHP mysql_real_escape_string() 函数

守給你的承諾、 提交于 2019-12-10 01:46:11
PHP MySQL 函数 定义和用法 mysql_real_escape_string() 函数转义 SQL 语句中使用的字符串中的特殊字符。 下列字符受影响: \x00 \n \r \ ' " \x1a 如果成功,则该函数返回被转义的字符串。如果失败,则返回 false。 语法 mysql_real_escape_string(string,connection) 参数 描述 string 必需。规定要转义的字符串。 connection 可选。规定 MySQL 连接。如果未规定,则使用上一个连接。 说明 本函数将 string 中的特殊字符转义,并考虑到连接的当前字符集,因此可以安全用于 mysql_query() 。 提示和注释 提示:可使用本函数来预防数据库攻击。 例子 例子 1 <?php $con = mysql_connect("localhost", "hello", "321"); if (!$con) { die('Could not connect: ' . mysql_error()); }// 获得用户名和密码的代码// 转义用户名和密码,以便在 SQL 中使用$user = mysql_real_escape_string($user); $pwd = mysql_real_escape_string($pwd); $sql = "SELECT *

Incorrect string value: '\xB2\xE5\xC8\xEB\xD6\xD0...' for column 'file_path' at row 1

北城以北 提交于 2019-12-10 00:00:21
1、问题描述: 在C++中封装的MySQL操作在插入中文时失败。返回失败信息如下: Incorrect string value: '\xB2\xE5\xC8\xEB\xD6\xD0...' for column 'file_path' at row 1 2、问题分析: 刚开始时的时候我在VS中打印出要插入的中文字符是乱码,以为是编译器和数据库的编码格式的问题,在网上找了解决方案都是修改服务器的编码格式,或者修改MySQL Server 8.0 Data中my.ini中的编码格式,但是都没作用。最后一步步调试跟踪后发现: (1)乱码问题: 乱码问题是我在将 stringstream 转换为string时使用了mysql.h中的: unsigned long STDCALL mysql_real_escape_string(MYSQL *mysql, char *to, const char *from, unsigned long length); 导致的问题,实际上在转换时使用 stringstream 中的str()函数即可解决。 (2)插入中文失败问题: 向数据库插入中文字符失败是发生在最后调用mysql.h中的mysql_query()发生了错误。即实际上在插入中文的时候最后是使用了以下函数: int STDCALL mysql_query(MYSQL *mysql,