mysql函数怎么提交 mysql手动提交

mysql 语句 怎样传递一个函数的参数CREATE FUNCTION `fristPinyin`(P_NAME VARCHAR(255)) RETURNS varchar(255) CHARSET utf8
BEGIN
DECLARE V_RETURN VARCHAR(255);
SET V_RETURN = ELT(INTERVAL(CONV(HEX(left(CONVERT(P_NAME USING gbk),1)),16,10),
0xB0A1,0xB0C5,0xB2C1,0xB4EE,0xB6EA,0xB7A2,0xB8C1,0xB9FE,0xBBF7,
0xBFA6,0xC0AC,0xC2E8,0xC4C3,0xC5B6,0xC5BE,0xC6DA,0xC8BB,
0xC8F6,0xCBFA,0xCDDA,0xCEF4,0xD1B9,0xD4D1),
'A','B','C','D','E','F','G','H','J','K','L','M','N','O','P','Q','R','S','T','W','X','Y','Z');
RETURN V_RETURN;
END
pinyin :此函数是将一个中文字符串对应拼音母的每个相连 (例如:"中国人"-ZGR)
复制代码 代码如下:
CREATE FUNCTION `pinyin`(P_NAME VARCHAR(255)) RETURNS varchar(255) CHARSET utf8
BEGIN
DECLARE V_COMPARE VARCHAR(255);
DECLARE V_RETURN VARCHAR(255);
DECLARE I INT;
SET I = 1;
SET V_RETURN = '';
while ILENGTH(P_NAME) do
SET V_COMPARE = SUBSTR(P_NAME, I, 1);
IF (V_COMPARE != '') THEN
#SET V_RETURN = CONCAT(V_RETURN, ',', V_COMPARE);
SET V_RETURN = CONCAT(V_RETURN, fristPinyin(V_COMPARE));
#SET V_RETURN = fristPinyin(V_COMPARE);
END IF;
SET I = I + 1;
end while;
IF (ISNULL(V_RETURN) or V_RETURN = '') THEN
SET V_RETURN = P_NAME;
END IF;
RETURN V_RETURN;
END
示例:
复制代码 代码如下:
mysql select p.province, fristPinyin(p.province), pinyin(p.province) from province p;
+------------------+-------------------------+--------------------+
| province| fristPinyin(p.province) | pinyin(p.province) |
+------------------+-------------------------+--------------------+
| 北京市| B| BJS|
| 天津市| T| TJS|
| 河北省| H| HBS|
| 山西省| S| SXS|
| 内蒙古自治区| N| NMGZZQ|
+------------------+-------------------------+--------------------+
5 rows in set
mysql的函数不能用commit吗首先得看Mysql中你的表使用的什么引擎,MyISAM引擎是不支持事务的,所以谈不上commit;innod引擎支持事务,但是得看数据库中是不是设置了自动提交事务:
mysql show variables like '%autocommit%';
+---------------+-------+
| Variable_name | Value |
+---------------+-------+
| autocommit| on|
+---------------+-------+
1 row in set (0.00 sec)
mysql
显示结果为on表示事务自动提交 , 也即不用手工去commit 。
当然 , 你可以设置其为off,然后自己手工去commit 。
怎样用PHP中的MySQL操作函数1. 建立MySQL 连接:mysql_connect
resource mysql_connect([string $server[, string $username [, string $password [, bool $new_link [, int $client flags]]]]])
打开或重复使用一个到MySQL服务器mysql函数怎么提交的连接 。其中mysql函数怎么提交,server代表MySQL服务器,可以包括端口号 , 例如“hostname:port” 。username和password分别代表登录MySQL服务器使用的用户名和密码 。
2. 选择 MySQL 数据库:mysql_select_db
bool mysql_select_db(string $database_name[, resource $link_identifier])
设定与指定的连接标识符所关联的服务器上的当前数据库 。如果没有指定连接标识符,则使用上一个打开的连接 。如果没有打开的连接,本函数将无参数地调用mysql_connect()来尝试打开一个数据库连接 。如果成功则返回true,失败则返回false 。每个其后的mysgl_query()调用都会作用于活动数据库 。
3. 执行查询:mysql_query
resource mysql_query(string $query[, resource $link_identifier])
向与指定的连接标识的关联的服务器中的当前活动数据库发送一条查询 。如果没有指定 link_identifier,则使用上一个打开的连接 。如果没有打开的连接 , 本函数会尝试无参数地调用mysql_connect()函数来建立一个连接 , 查询结果会被缓存 。mysql_query()仅对SELECT、SHOW、EXPLAIN或DESCRIBE语句返回一个资源标识符,如果查询执行不正确则返回false 。对于其mysql函数怎么提交他类型的SQL语句,mysgl_query()在执行成功时返回true,出错时返回false 。非false的返回值意味着查询是合法的并能够被服务器执行但是并不说明任何影响到的或返回的行数 。因为一条查询执行成功mysql函数怎么提交了但并未影响到或并未返回任何行的情况是可能发生的 。

推荐阅读