浏览模式: 标准 | 列表 2019年10月的文章

从MSSQL(SQL Server)2008迁移数据至MySQL5.x

有个网站是asp.net+mssql,要改版成php+mysql,要求原来网站里的文章都需要迁移到新网站,那么也就是要把原SQL Server的数据迁移到MySQL数据库。

虽然都是关系型数据库,但是还是有一定差异,最终操作过程如下:

1、备份原数据库(防止数据丢失);

2、比对新老数据库中数据表字段差异,将原数据库中的无用的字段直接删除,仅保留需要导入到新数据库表中的字段(数据);

3、使用Navicat这个万能数据库操作软件连接原数据库,导出原数据库的表数据,生成sql语句形式;

4、导出的sql语句文件都是insert into语句,也就是新增数据,通过Notepad++或者Sublime软件打开该文件替换相关的语句;

5、替换完成后保存,将该sql语句通过phpmyadmin导入至新数据库(请注意如果新数据库对应的表中某些字段是老数据库里没有的话,请设置一个默认值NULL防止因为导入的时候没默认值而失败)。

(完)

支持PHP 5.4.45的phpmyadmin版本:4.4.15.10 2017...

最近某个业务中服务器是windows 2003,因为这个服务器上还有其它服务,所以也没有重装它,只能安装能在这个系统上跑的最高php版本:PHP 5.4.45

而这个版本的PHP,无法支持最新的phpmyadmin,会提示:PHP 5.5+ is required. Currently installed version is: 5.4.45

解决方法1:升级PHP版本(这里是行不通的因为这个系统可以安装的最新版只能是5.4.45)

解决方法2:下载可以支持5.4.45的phpmyadmin。经过测试,最新的支持到5.4.45的phpmyadmin版本是2017-01-23发布的4.4.15.10。下载地址:https://files.phpmyadmin.net/phpMyAdmin/4.4.15.10/phpMyAdmin-4.4.15.10-all-languages.zip

修改它的配置,找到配置文件,位于libraries\config.default.php,包括主机地址$cfg['Servers'][$i]['host']和端口地址$cfg['Servers'][$i]['port']都可以定义。

thinkphp5.1程序:volist中使用自定义函数设定数据集

最近使用ThinkPHP5.1在开发一套程序,之前的项目中大多数是后台管理程序,不需要在控制器里进行大量的数据库查询和调用。而这次因为这个程序是一个监控显示程序,需要在前台调取10+栏目的数据并且分别展示出来。

那么按照正常的思路就是在控制器的方法中写大量的查询语句并用assign函数绑定到模板变量中,然后再模板变量中用volist输出。

这样子操作太麻烦,因为要给这10+栏目的数据设置10个变量名(数组),而且模板中需要进行大量的修改。这样很不程序化……

怎么办呢?打开官方手册地址:https://www.kancloud.cn/manual/thinkphp5_1/354084

手册中给出了一个解决方法:直接使用函数设定数据集,而不需要在控制器中给模板变量赋值传入数据集变量。

那么怎么实现呢?

首先打开\application\common.php文件,写一个公用的调用函数,如下:

function G_data($type){

    $list = Db::table('c')->where('type',$type)->where('status',1)->select();

    return $list;

}

这个函数的意思是查询数据库中c表里符合status=1且type=传参的数据。

那么模板中怎么写?

{volist name=":G_data(0)" id="data"}

<p><a href="{$data.link}" target="_blank">{$data.name}</A></p>

{/volist}

这段代码的意思是查询type=0的数据并显示出它的链接link和内容name。

 

Apache下htaccess重定向代码

参考网址:https://coolestguidesontheplanet.com/redirecting-a-web-folder-directory-to-another-in-htaccess/