#/usr/bin/python
#-*- coding:utf-8 -*-
#@Time :2017/11/24 2:59
#@Auther :liuzhenchuan
#@File :增加#数据.py
#select * from tmp 10行数据
#select * from tmp a ,tmp b, tmp c: 1000行数据=10*10*10
#tmp a tmp b tmp c 对应表1 表2 表3
#获得随机字符串的设计
#增加的数据是随机数据,rand() 函数生成0-1 的一个随机数
#shal() 对数字进行加密,然后就生成了一堆字符串
#concat() 拼接多个字符串的函数
#substr() 取多少个字符
#获得随机整数的设计
# rand()*50 通过rand() 函数获得一个0-1的数,然后再乘以50 取到的数就是0-50
# floor() 这个函数代表的是去尾法取整数
# 男女的设计
# rand()*10 /2 最后取余数
# 如果余数为1,就设置为M
#如果余数为0,就设置为F
import MySQLdb
student = '''
set @a = 10000;
insert into student select @a := @a + 1, substr(concat(sha1(rand()), sha1(rand())), 1, 5+floor(rand()* 50)), case floor(rand()*10) mod 2 when 1 then "M" else "F" end, 20+floor(rand() * 8) from tmp a, tmp b, tmp c, tmp d;
'''
# insert into student select @i:=@i+1, substr(concat(sha1(rand()), sha1(rand())), 1, 3 + floor(rand() * 75)), case floor(rand()*10) mod 2 when 1 then 'M' else 'F' end, 25-floor(rand() * 5) from tmp a, tmp b, tmp c, tmp d;
# 我用下去这种insert就会有同名字的学生名
course = '''set @i := 10;
insert into course select @i:=@i+1, substr(concat(sha1(rand()), sha1(rand())), 1, 5 + floor(rand() * 45)), 100 + floor(rand() * 100) from tmp a;
'''
score = '''set @i := 10000;
insert into score select @i := @i +1, floor(10001 + rand()*10000), floor(11 + rand()*10), floor(1+rand()*100) from tmp a, tmp b, tmp c, tmp d;
'''
teacher = '''set @i := 100;
insert into teacher select @i:=@i+1, substr(concat(sha1(rand()), sha1(rand())), 1, 5 + floor(rand() * 80)) from tmp a, tmp b;
'''
def connect_mysql():
db_config = {
"host": "192.168.16.70",
"port": 3306,
"user": "root",
"passwd": "123123",
"db": "students",
"charset": "utf8"
}
try:
cnx = MySQLdb.connect(**db_config)
except Exception as e:
raise e
return cnx
if __name__ == "__main__":
cnx = connect_mysql()
try:
cus = cnx.cursor()
cus.execute(student)
cus.close()
cus = cnx.cursor()
cus.execute(course)
cus.close()
cus = cnx.cursor()
cus.execute(score)
cus.close()
cus = cnx.cursor()
cus.execute(teacher)
cus.close()
cnx.commit()
except Exception as e:
cnx.rollback()
raise e
finally:
cnx.close()
查看数据库:
ysql> show tables;
+--------------------+
| Tables_in_students |
+--------------------+
| course |
| score |
| student |
| teacher |
| tmp |
+--------------------+
mysql> select *from course limit 10;
+-------+---------------------------------------------+-----+
| couid | cname | tid |
+-------+---------------------------------------------+-----+
| 11 | 86c85fe76342ff5e376264621 | 100 |
| 12 | ccef65aa5b377ac39ddd7dc44 | 143 |
| 13 | 0e8a391f36 | 146 |
| 14 | 6755d9fa73 | 146 |
| 15 | 8c79d4684d88065b1cecbe76 | 143 |
| 16 | 6bf78ad3dd4f5db7751fcfff6e661d526e814c54 | 166 |
| 17 | 2210cf9debd4a096373fd452d057f5c0f | 141 |
| 18 | 16e99f932a599ca8f940eeabebc04996c | 126 |
| 19 | a839d37dffd0cdd80bc7d | 181 |
| 20 | 17601ade7e74aa81f3fdf23d47af85bf2e8ed232288 | 152 |
+-------+---------------------------------------------+-----+
10 rows in set (0.00 sec)
mysql> select *from score limit 10;
+-------+-------+-----+-------+
| sid | stdid | cid | grade |
+-------+-------+-----+-------+
| 10001 | 10742 | 19 | 78 |
| 10002 | 14902 | 12 | 12 |
| 10003 | 12126 | 18 | 99 |
| 10004 | 17672 | 19 | 5 |
| 10005 | 16303 | 11 | 15 |
| 10006 | 17104 | 12 | 43 |
| 10007 | 18091 | 18 | 37 |
| 10008 | 15446 | 17 | 53 |
| 10009 | 17175 | 11 | 96 |
| 10010 | 16939 | 17 | 100 |
+-------+-------+-----+-------+
10 rows in set (0.00 sec)
mysql> select *from student limit 10;
+-------+-------------------------------------------------------+--------+-------+
| stdid | stdname | gender | agent |
+-------+-------------------------------------------------------+--------+-------+
| 10001 | 05be2e1f6be2dba3496d | M | 27 |
| 10002 | 8d21176c8a4cad420d9adec8dd6022146ed0b69dabe80c56c91 | F | 24 |
| 10003 | 582cf648fbb65fcae2eb0 | F | 22 |
| 10004 | ece0f0bb303e98859d9d41b6f246864e22d86ad405048ee | M | 23 |
| 10005 | e484bfbd4011fcebfa0d18271975b0834a1ccedd | M | 26 |
| 10006 | bb1ecba374c1dbdda1be | F | 22 |
| 10007 | 0b30cf54b756d4665e8fc41c7450433f590aefc37c8ea9afbbe8e | M | 27 |
| 10008 | 3cdf0dddcd8911386fd36b2bf3 | F | 27 |
| 10009 | f699c14f237ad1778fe2f1d | F | 20 |
| 10010 | a4b36903fd1c0e2f8f4151706e9d95ebfdf068b2f | F | 27 |
+-------+-------------------------------------------------------+--------+-------+
10 rows in set (0.00 sec)
mysql> select *from teacher limit 10;
+-----+------------------------------------------------------------------------+
| tid | tname |
+-----+------------------------------------------------------------------------+
| 101 | 7684b4b |
| 102 | 497c1eeb229d5faf8a88213f1a28ad5ceab755e222b832f50ef3b71f73860 |
| 103 | f7307 |
| 104 | 9c44341e4fd84d1545f5293df4762695e962540b39ebb528d58c509ab5 |
| 105 | d1cd631d236e48a8efccb032c833f867e863bbe361ef8cfd0869601 |
| 106 | 2cf3b9da2484eb560a8000be460f529dd17c |
| 107 | edc0ad15105a4dde02214a482fd0ac695517e307999fb7695bf1f6cfead6 |
| 108 | 8109966982f40ad1819d9c94023f4227eb019bd779305c0b8e9a87a7b0ddd436e97842 |
| 109 | 76433 |
| 110 | 438032fb74888de54a09e2cbd846650c85079f8feda82 |
+-----+------------------------------------------------------------------------+
10 rows in set (0.00 sec)
- [更新]跨平台物联网通讯框架 ServerSuperIO v1.2(SSIO),增加数据分发控制模式
1.[开源]C#跨平台物联网通讯框架ServerSuperIO(SSIO) 2.应用SuperIO(SIO)和开源跨平台物联网框架ServerSuperIO(SSIO)构建系统的整体方案 3.C#工业 ...
- 计算概论(A)/基础编程练习(数据成分)/3:整数的个数
#include<stdio.h> int main() { ] = {}; // 输入k个正整数 scanf("%d",&k); // 循环读入和进行算术 w ...
- 计算概论(A)/基础编程练习(数据成分)/2:奥运奖牌计数
#include<stdio.h> int main() { // n天的决赛项目 int n; scanf("%d",&n); ] = {}; while ( ...
- 计算概论(A)/基础编程练习(数据成分)/1:短信计费
#include<stdio.h> int main() { // 输入当月发送短信的总次数n和每次短信的字数words int n,words; scanf("%d" ...
- 多媒体基础知识之PCM数据《 转》
多媒体基础知识之PCM数据 1.什么是PCM音频数据 PCM(Pulse Code Modulation)也被称为脉冲编码调制.PCM音频数据是未经压缩的音频采样数据裸流,它是由模拟信号经过采样.量化 ...
- Java基础-线程操作共享数据的安全问题
Java基础-线程操作共享数据的安全问题 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.引发线程安全问题 如果有多个线程在同时运行,而这些线程可能会同时运行这段代码.程序每次运 ...
- ORACLE数据库增加表空间大小或给表空间增加数据文件
转载 2017年11月24日 11:00:28 ----查询表空间使用情况--- SELECT UPPER(F.TABLESPACE_NAME) "表空间名", D.TOT_GRO ...
- laravel基础课程---16、数据迁移(数据库迁移是什么)
laravel基础课程---16.数据迁移(数据库迁移是什么) 一.总结 一句话总结: 是什么:数据库迁移就像是[数据库的版本控制],可以让你的团队轻松修改并共享应用程序的数据库结构. 使用场景:解决 ...
- Django多变关联、增加数据、删除数据
建立表之间的关联关系: models.py里面对表的字段及外键关系的设置如下: from django.db import models # Create your models here. #出版社 ...
随机推荐
- Webdriver如何启动不同浏览器(python)
WebDriver 支持 Firefox (FirefoxDriver).IE (InternetExplorerDriver).Opera (OperaDriver) 和 Chrome (Chrom ...
- go语言的一些特性
go语言中如何判断一个方法是私有的还是公有的?说出来你可能不信,通过首字母的大小写. 不管是一个变量还是一个函数,如果它的首字母是大写的,那么它就是包外可见的,也就是说可以 从这个包的外面访问这个资源 ...
- 【共享单车】—— React后台管理系统开发手记:城市管理和订单管理
前言:以下内容基于React全家桶+AntD实战课程的学习实践过程记录.最终成果github地址:https://github.com/66Web/react-antd-manager,欢迎star. ...
- 简易选项卡&&简易JS年历
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- 《Android源代码设计模式解析与实战》读书笔记
1.定义 将对象组合成树形结构以表示"部分-总体"的层次结构,使得用户对单个对象和组合对象的使用具有一致性. 2.使用场景 (1)表示对象的部分-总体层次结构时. (2)从一个总体 ...
- springMVC+json构建restful风格的服务
首先.要知道什么是rest服务,什么是rest服务呢? REST(英文:Representational State Transfer,简称REST)描写叙述了一个架构样式的网络系统.比方 web 应 ...
- 【Shell】Read命令
read命令从键盘读取变量的值,通常用在shell脚本与用户进行交互的场合.该命令可以一次性读取多个变量的值,变量的输入和输出需要使用空格隔开.在read命令后面,如果没有指定变量名,读取的数据将被自 ...
- 未能从程序集“Oracle.ManagedDataAccess”加载 “OracleInternal.Common.ConfigBaseClass”
使用VS2015做项目的过程中一直使用的服务器上的oracle数据库,后来想学习一下oracle,就在本机安装了oracle.可没想到本来运行好好的项目,现在不能运行了.项目是使用的Abp框架,当运行 ...
- Redis 数据恢复方法,redis-port 工具将自建 redis 的 rdb文件同步到云数据库
1. Redis 恢复的机制 如果只配置 AOF ,重启时加载 AOF 文件恢复数据: 如果同时配置了 RDB 和 AOF ,启动是只加载 AOF 文件恢复数据: 如果只配置 RDB,启动是将加载 d ...
- 工作总结 页面通过ajax 动态绑定 列表页面 列表每一项的事件 事件触发多次
遇到一个问题 困惑了两天 页面的事件不知道为什么触发多次 试了各种办法 对比了之前的页面 各种测试 不是js css 外部链接 重复加载问题 也不是嵌套的 div 问题 各种都试过 最终发现 是 ...