MySQL导入数据相关操作

2015-11-10, 星期二 |
tutorial数据库

有时候由于数据库表结构的更改,需要对MySQL数据库进行备份和导入操作,掌握基本的MySQL的操作甚为必要。

使用某数据库

例如使用数据库app_feat:

登录并使用

$ mysql -uroot -p app_feat;

登录后使用

MariaDB [(none)]> use app_feat;

登录MySQL后显示数据库和表

MariaDB> show databases;
MariaDB [app_feat]> show tables;

描述表结构

例如描述表auth_user:

MariaDB [app_feat]> describe auth_user;

导出数据库到.sql文件

例如导出数据库app_feat到文件app_feat.sql

$ mysqldump -uroot -p app_feat > app_feat.sql

例如导出数据库app_feat中的表blog_article到文件blog_article.sql

$ mysqldump -uroot -p app_feat blog_article> blog

Django1.8 create_user 时出现IntegrityError

2015-11-10, 星期二 |
Django解决方案

使用Django1.8在admin界面,或shell下create_user, 出现如下错误

IntegrityError: (1048, "Column 'last_login' cannot be null")

原因是在Django1.8中,对last_login作了更改,允许last_login为null, 原文链接是

https://docs.djangoproject.com/en/1.8/releases/1.8/#abstractuser-last-login-allows-null-values

解决办法有两种

  1. python manage.py migrate
  2. 若第一种方法报"Table 'xx' already exists"错误,可以直接修改数据库表auth_user的结构,以使last_login, Null=Yes
    • 可以使用PHPMyAdmin修改
    • 可以使用SQL语句在Mysql客户端修改

参考stackoverflow

使用余音WebSpeech

2015-10-22, 星期四 |
短说extensionJavaScriptTTS

我想在Web上使用tts(Text to Speech),于是特意在网上搜索了一番,找到余音WebSpeech,发现其使用十分简单,特此记录这件事。

另一方面我想了解如何动态加载JS,又如何跨域。前面看到百度文章收藏的书签、为知笔记网页剪辑工具、QQ云输入法这些范例,于是特意模仿之。我知道JQuery的$.getScript可以动态加载并执行JS,但是我想用纯JavaScript。

使用余音WebSpeech的WebSpeech.js,于是先上传到本空间

我想用WebSpeech说的话是文本框中的内容

var words = document.getElementsByName('username')[0].value;

对于有JQuery的特定网页,也许用选择器更准确

var words = $('input[name="username"]').val();

动态加载js的方法是在网页的body的头部插入Script元素

void(function(d){
    var b = d.getElementsByTagName("body")[0];
    var first

隐藏文件C#程序设计

2015-09-20, 星期日 |
windowsC#coding

最近学习C#的一点儿皮毛,于是心血来潮写了一个隐藏文件的小工具,编译后的程序名为HideFile.exe。

程序的功能主要的功能是通过拖拽隐藏指定的文件,显示最后隐藏的文件,和显示工作目录下所有被隐藏的文件。


部分代码

1.拖拽的实现

先设置Label的AllowDrop=True。

1.1 拖拽进入的事件

byzanz 屏幕录制程序初体验

2015-09-16, 星期三 |
linuxusage屏幕录制wizard

byzanz,别棕子或掰簪子,是linux平台使用的程序,用以录制桌面并保存为gif,flv,webm等格式。它有点奇葩,只能以命令的方式运行。

1.首先在fedora下安装之:

# dnf install -y byzanz

2.然后,看看是怎么用的:

$ byzanz-record --help

说是有几个选项需要设定,动画的时间,延时的秒数,是否带光标,起始位置及高度等,通过指定文件名的后缀判断保存的动画格式,如果是webm格式,还可以通过 -a来带录音。

3.小试了一下,

$ byzanz-record -v -c -d 30 demo.gif

其中,-v表示--verbose, 带此参数用以查看程序运行的状态。-c是表示录制的时候光标也一并录入,-d 30则是表示录制时长为30秒,最后是文件名。可惜不能后台运行,因为带&后,提示文件名错误。也许$ byzanz-record demo.gif -v -c -d 30 &可以,但没试过。

运行的过程中也没有出现什么异常,下面是效果图。

示例图

说说别棕子不好的地方:

  • 非要用命令行的,都没有界面,录制时把终端也录制进去