新之心
- 新之心 2018-04-12 已签到连续签到1天,获得了5个金钱
- 新之心 2017-10-09 已签到连续签到1天,获得了5个金钱
- 新之心 回答了问题 AR查询怎么格式化时间戳?
直接百度下,php时间友好显示
$str=str_replace("
","",$str);
//$str=htmlspecialchars($str);
return strip_tags($str);- 新之心 2017-07-27 已签到连续签到2天,获得了10个金钱
- 新之心 2017-07-26 已签到连续签到1天,获得了5个金钱
function actionShiwu() {
// 外部事务 $connection =Yii::$app->db; $transaction1 = $connection->beginTransaction(); $arr =explode(',', 'http://www.baidu.com,http://www.baidu44.com,http://www.99l.com'); $name ='印度'; $number=22; try { $sql1 ="update country set name='{$name}' where code='IN'"; $a=$connection->createCommand($sql1)->execute(); if(!$a){ throw new \Exception('修改失败'); } // 内部事务 $transaction2 = $connection->beginTransaction(); try { $result = Yii::$app->db->createCommand(" CREATE TABLE `b_{$number}` ( `id` int(10) NOT NULL AUTO_INCREMENT COMMENT '主键', `name` varchar(255) DEFAULT NULL COMMENT '名称', `domain` varchar(255) DEFAULT '' COMMENT '域名', `is_delete` int(10) DEFAULT '0', PRIMARY KEY (`id`), UNIQUE KEY `domain` (`domain`) ) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8 COMMENT='b表_{$number}'; ")->execute(); foreach ($arr as $k=>$v){ $data[] = '("' . 'null' . '", "' . '' . '", "' . $v . '", "' .'0'. '")'; } $query = "INSERT INTO b_{$number} (id,name,domain,is_delete)VALUES" . implode(',', $data); $webDomainSamData=$connection->createCommand($query)->execute(); if(!$webDomainSamData){ throw new \Exception('添加任务网址失败'); } $transaction2->commit(); } catch (\Exception $e) { throw $e; $transaction2->rollBack(); } $transaction1->commit(); } catch (\Exception $e) { throw $e; $transaction1->rollBack(); } }
//数据表
DROP TABLE IF EXISTScountry
;
CREATE TABLEcountry
(code
char(2) NOT NULL,name
char(52) NOT NULL,population
int(11) NOT NULL DEFAULT '0',
PRIMARY KEY (code
)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;-- Records of country
INSERT INTO
country
VALUES ('AU', 'Australia', '18886000');
INSERT INTOcountry
VALUES ('BR', 'Brazil', '170115000');
INSERT INTOcountry
VALUES ('CA', 'Canada', '1147000');
INSERT INTOcountry
VALUES ('CN', 'China', '1277558000');
INSERT INTOcountry
VALUES ('DE', 'Germany', '82164700');
INSERT INTOcountry
VALUES ('FR', 'France', '59225700');
INSERT INTOcountry
VALUES ('GB', 'United Kingdom', '59623400');
INSERT INTOcountry
VALUES ('IN', '印度333', '1013662000');
INSERT INTOcountry
VALUES ('RU', 'Russia', '146934000');
INSERT INTOcountry
VALUES ('US', 'U.S.A', '278357000');返回错误
Database Exception – yii\db\ExceptionSQLSTATE[42000]: Syntax error or access violation: 1305 SAVEPOINT LEVEL1 does not exist
The SQL being executed was: RELEASE SAVEPOINT LEVEL1
Error Info: Array
([0] => 42000 [1] => 1305 [2] => SAVEPOINT LEVEL1 does not exist
)
↵
Caused by: PDOExceptionSQLSTATE[42000]: Syntax error or access violation: 1305 SAVEPOINT LEVEL1 does not exist
in D:\phpStudy\WWW\demo\vendor\yiisoft\yii2\db\Command.php at line 842
在catch里打印错误啊 echo array_values($model->getFirstErrors())[0];exit;
错误还是能看到的,http://www.jb51.net/article/40656.htm 发现含有里边的DDL语句会自动触发commit