现在基本没有什么能离得开数据库了,django我一直用的都是mysql的数据库,这次和大家说说django--mysql数据库的一些常用命令吧

1:命令行登陆mysql

C:\Users\Administrator>mysql -uroot -p
Enter password: ********

2:创建一个新的数据库并使用它

mysql> create database t;
Query OK, row affected (0.02 sec) mysql> use t;
Database changed

3:说点注意问题,我们先练show一下

mysql> show create database t;
+----------+--------------------------------------------------------------+
| Database | Create Database |
+----------+--------------------------------------------------------------+
| t | CREATE DATABASE `t` /*!40100 DEFAULT CHARACTER SET latin1 */ |
+----------+--------------------------------------------------------------+
row in set (0.00 sec)

注意到字符集是Latin1的

这样就无法存中文了,下面我们改一下设置吧,具体的命令我就不一一解说了,相信大家都能看得懂

mysql> show variables like 'char%';
+--------------------------+----------------------------------------------------
-----+
| Variable_name | Value
|
+--------------------------+----------------------------------------------------
-----+
| character_set_client | latin1
|
| character_set_connection | latin1
|
| character_set_database | latin1
|
| character_set_filesystem | binary
|
| character_set_results | latin1
|
| character_set_server | latin1
|
| character_set_system | utf8
|
| character_sets_dir | C:\Program Files\MySQL\MySQL Server 5.5\share\chars
ets\ |
+--------------------------+----------------------------------------------------
-----+
rows in set (0.01 sec) mysql> set names utf8;
Query OK, rows affected (0.01 sec) mysql> show variables like 'char%';
+--------------------------+----------------------------------------------------
-----+
| Variable_name | Value
|
+--------------------------+----------------------------------------------------
-----+
| character_set_client | utf8
|
| character_set_connection | utf8
|
| character_set_database | latin1
|
| character_set_filesystem | binary
|
| character_set_results | utf8
|
| character_set_server | latin1
|
| character_set_system | utf8
|
| character_sets_dir | C:\Program Files\MySQL\MySQL Server 5.5\share\chars
ets\ |
+--------------------------+----------------------------------------------------
-----+
rows in set (0.00 sec) mysql> set character_set_database = 'utf8';
Query OK, rows affected (0.00 sec) mysql> set character_set_server = 'utf8';
Query OK, rows affected (0.00 sec) mysql> show variables like 'char%';
+--------------------------+----------------------------------------------------
-----+
| Variable_name | Value
|
+--------------------------+----------------------------------------------------
-----+
| character_set_client | utf8
|
| character_set_connection | utf8
|
| character_set_database | utf8
|
| character_set_filesystem | binary
|
| character_set_results | utf8
|
| character_set_server | utf8
|
| character_set_system | utf8
|
| character_sets_dir | C:\Program Files\MySQL\MySQL Server 5.5\share\chars
ets\ |
+--------------------------+----------------------------------------------------
-----+
rows in set (0.00 sec)

3:然后把1,2步骤中创建的数据库删掉,drop database +数据库名就可以了,然后重新创建就ok了

4:现在配置django中的配置文件

DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql', # Add 'postgresql_psycopg2', 'mysql', 'sqlite3' or 'oracle'.
'NAME': 'irsearch', # Or path to database file if using sqlite3.
'USER': 'root', # Not used with sqlite3.
'PASSWORD': '你的数据库的密码', # Not used with sqlite3.
'HOST': '127.0.0.1', # Set to empty string for localhost. Not used with sqlite3.
'PORT': '', # Set to empty string for default. Not used with sqlite3.
}
}

5:写model.py了,简单举例,注意一定要用models.Model,否则没用的

#-*- coding: utf-8 -*-
from django.db import models # Create your models here.
class Weibo(models.Model):
"""docstring for weibo"""
w_id = models.IntegerField(primary_key=True)
userid = models.CharField(max_length=20)
username = models.CharField(max_length=30)
content = models.CharField(max_length=2000)
ptime = models.CharField(max_length=20)
count = models.IntegerField()

6:django的SQL操作

python manage.py syncdb 初始化数据库或者更新数据库

python manage.py sql +数据库名字

python manage.py  sql +数据库名字 > t.sql 可以让这些数据写入到t.sql中,可以直接用

6:mysql的数据导入导出

其实强烈不建议使用mysql的数据导入导出的,可以通过后台直接读取数据库而进行数据库中的数据的导入导出

C:\Users\Administrator>mysqldump
Usage: mysqldump [OPTIONS] database [tables]
OR mysqldump [OPTIONS] --databases [OPTIONS] DB1 [DB2 DB3...]
OR mysqldump [OPTIONS] --all-databases [OPTIONS]
For more options, use mysqldump --help
数据库名  表名
C:\Users\Administrator>mysqldump -uroot -p irsearch search_stop >stop.txt
Enter password: ********

然后就可以在当前目录下看到stop.txt了,最好是输出到sql文件里面,然后就可以直接导入sql了

如果是导入新浪SAE的数据库,记得吧里面的LOCK,UNLOCK 指令去掉,因为SAE没有给你这个指令的权限

最后一定提醒大家,注意数据库的存放格式,否则你会哭的,相信我

最新文章

  1. 对于前端,「微信小程序」其实不美好
  2. 审核被拒(后台定位,autio,voip,发表朋友圈)
  3. 关于oracle的准备
  4. XTU 1242 Yada Number 容斥
  5. POJ 1080 Human Gene Functions
  6. ***PHP请求服务curl以及json的解析
  7. 微软Code Hunt答案(00-05)——沉迷娱乐的我
  8. Qt序列化格式分析(qint,QString)(非常简单好用)
  9. 设计模式模式游客(Visitor)摘录
  10. Python安装httplib2 0.9.2
  11. Flex布局语法
  12. 笔记:MyBatis XML配置-typeHandlers 默认类型处理器
  13. mysqli链接数据库
  14. tomcat自动重新加载应用
  15. C++ WString与String互相转换
  16. P3660 【[USACO17FEB]Why Did the Cow Cross the Road III G】
  17. BerOS File Suggestion(stl-map应用)
  18. NoSQL -- Redis使用
  19. mysql出现ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' 错误
  20. 墨者学院靶场之PHP代码分析溯源(第1题)

热门文章

  1. BZOJ 1565 NOI2009 植物大战僵尸 topo+最小割(最大权闭合子图)
  2. [译]在Python中如何使用额enumerate 和 zip 来迭代两个列表和它们的index?
  3. 【iOS开发】创建单例的两种方法
  4. iOS-登录发送验证码时60秒倒计时,直接用
  5. vue中表单的动态绑定
  6. win7 C/C++,QT安装环境总结
  7. 处理大并发量订单处理的 KafKa部署总结
  8. zTree基本功能[core]
  9. POJ1637:Sightseeing tour(混合图的欧拉回路)
  10. Educational Codeforces Round 56 (Rated for Div. 2) ABCD