基于CentOS的MySQL学习补充三--使用Shell批量创建数据库表
本文出处:http://blog.csdn.net/u012377333/article/details/47006087
接上篇介绍《基于CentOS的Mysql学习补充二--使用Shell创建数据库》,本文继续探索关于Shell和MySQL的结合使用,我不知道当一个数据库设计完毕之后怎样高速的创建设计好的数据库表和加入对应基本数据,我眼下知道的就是使用Shell和SQL脚本来达到我的目的--高速的、多次的、可反复利用的创建数据库表。
创建一个数据库表的SQL脚本:
/************************************************************
#Author: chisj
#Date: 2015.7.22
#Describe: Create Database 'SmartCare' Table 'sct_Province'
*************************************************************/ USE SmartCare; DROP TABLE IF EXISTS `sct_Province`; CREATE TABLE `sct_Province`(
`ProvinceID` int(11) unsigned NOT NULL AUTO_INCREMENT,
`ProvinceCode` varchar(11) DEFAULT NULL,
`ParentID` varchar(11) DEFAULT NULL,
`ProvinceName` varchar(50) DEFAULT NULL,
`Level` tinyint(1) DEFAULT NULL,
PRIMARY KEY (`ProvinceID`)
) ENGINE=MyISAM AUTO_INCREMENT=1 DEFAULT CHARSET=utf8;
运行指定文件夹下全部的SQL脚本(指定文件夹,多个SQL脚本)的Shell脚本:
#!/bin/bash #Author: chisj
#Time: 2015.7.22
#Describe: Create Database Table #The username of mysql database
USER="root" #The password of mysql database
PASS="dragonwake" #The datebase name will be created
DATABASE="SmartCare" LOCATION=${PWD}
CREATE_TABLE_SCT=create_table_sct_ for table_name in `ls ${LOCATION}/${CREATE_TABLE_SCT}*`
do mysql -u $USER -p$PASS << EOF > /dev/null SOURCE ${table_name}; EOF if [ $? -eq 0 ]; then echo "Create Table ${table_name} Success!" fi done
事实上关于Shell批量创建数据表的方法非常多,之前又看到过。可惜没有记住0.0,可见记录非常重要哟
所以我还是依照我的思路又一次弄了一遍:首先写好创建数据表的SQL脚本是必要的,能够将全部的都写在一个里面(个人认为不好),也能够依照一个表写一个SQL脚本(眼下我市採用这样的方法),然后就是在指定文件夹以下依照指定SQL脚本名进行遍历。找到一个创建数据库表SQL脚本,然后就运行一次。
相同给出CSDN的下载地址:Shell创建MySQL数据表
基于CentOS的MySQL学习补充三--使用Shell批量创建数据库表的更多相关文章
- 基于CentOS的MySQL学习补充四--使用Shell批量从CSV文件里插入数据到数据表
本文出处:http://blog.csdn.net/u012377333/article/details/47022699 从上面的几篇文章中,能够知道怎样使用Shell创建数据库.使用Shell创建 ...
- Activiti工作流学习笔记(三)——自动生成28张数据库表的底层原理分析
原创/朱季谦 我接触工作流引擎Activiti已有两年之久,但一直都只限于熟悉其各类API的使用,对底层的实现,则存在较大的盲区. Activiti这个开源框架在设计上,其实存在不少值得学习和思考的地 ...
- MySQL学习(三)主备分库分表和恢复数据 --- 2019年2月
1.MySQL主备切换 readonly 设置对超级(super)权限是无效的,而用于同步更新的线程,就拥有超级权限. 建议在做主备数据库的时候,将备用数据库设置为只读.(反向用readonly来判断 ...
- Cacti监控服务器配置教程(基于CentOS+Nginx+MySQL+PHP环境搭建)
Cacti监控服务器配置教程(基于CentOS+Nginx+MySQL+PHP环境搭建) 具体案例:局域网内有两台主机,一台Linux.一台Windows,现在需要配置一台Cacti监控服务器对这两台 ...
- MYSQL学习笔记三:日期和时间函数
MYSQL学习笔记三:日期和时间函数 1. 获取当前日期的函数和获取当前时间的函数 /*获取当前日期的函数和获取当前时间的函数.将日期以'YYYY-MM-DD'或者'YYYYMMDD'格式返回 */ ...
- MySql学习笔记三
MySql学习笔记三 4.DML(数据操作语言) 插入:insert 修改:update 删除:delete 4.1.插入语句 语法: insert into 表名 (列名1,列名2,...) val ...
- 无法远程连接mysql,连接后也没有权限创建数据库
问题现象:无法远程连接mysql,连接后也没有权限创建数据库 问题原因: MySql-Server 出于安全方面考虑只允许本机(localhost, 127.0.0.1)来连接访问. 这对于 Web- ...
- mysql学习笔记三 —— 数据恢复与备份
要点: 1.存储引擎2.导入导出3.备份与恢复 查看当前数据库中的所有表use db1:show tables: 1.存储引擎 不同的发动机(引擎)适用的汽车类型不一样. 存储和处理的不同方式.不同的 ...
- MySQL学习笔记三:库和表的管理
1.MySQL数据库服务配置好后,系统会有4个默认的数据库. information_schema:虚拟对象,其对象都保存在内存中 performance_schema:服务器性能指标库 mysql: ...
随机推荐
- 测试开发之Django——No1.介绍以及引申
前言 > 测试行业发展飞速,自动化测试兴起,由此对测试人员的要求与日俱增.随时而来的,就是职能的增加. > 首先需要学习的,就是自动化测试.而由自动化测试引申而来的,就是另外几个新增的岗位 ...
- jq选择子元素
jq选择子元素 一.获取父级元素 1. parent([expr]): 获取指定元素的所有父级元素 <div id="par_div"><a id="h ...
- C++ 矩阵库 eigen
找了好久才发现了一个这么方便的C++矩阵库. 官网 http://eigen.tuxfamily.org/index.php?title=Main_Page 参考文章 http://blog.csdn ...
- angular和vue双向数据绑定
angular和vue双向数据绑定的原理(重点是vue的双向绑定) 我在整理javascript高级程序设计的笔记的时候看到面向对象设计那章,讲到对象属性分为数据属性和访问器属性,我们平时用的js对象 ...
- 【AtCoder】ARC100 题解
C - Linear Approximation 找出\(A_i - i\)的中位数作为\(b\)即可 题解 #include <iostream> #include <cstrin ...
- 【LOJ】#2109. 「JLOI2015」骗我呢
题解 我深思熟虑许久才算是明白个大概的计数问题吧 先是转化成一个矩形,列一条直线y = x,y = x - (m + 1)我们从(0,0)走到(n + m + 1,m + 1)就是答案 因为我们起始相 ...
- Codeforces 584E Anton and Ira
Anton and Ira 我们把点分为三类, 向左走的, 向右走的, 不动的. 最完美的情况就是每个点没有走反方向. 每次我们挑选最右边的向右走的去把向左走的交换过来,这样能保证最优. #inclu ...
- 系统管理员常用的Linux命令
整理Linux的一些基本系统管理命令作为备忘 ========================================================================= 查看文 ...
- 基于jquery的简洁树形折叠菜单
先上效果图: 最小的ul就是一个最小的树枝,空间允许时可无限扩展.html如下: <div class="panel panel-default"> <div c ...
- rabbitmq学习(九) —— 关于消息队列的选型
转自http://cmsblogs.com/?p=3846 在IM这种讲究高并发.高消息吞吐的互联网场景下,MQ消息中间件是个很重要的基础设施,它在IM系统的服务端架构中担当消息中转.消息削峰.消息交 ...