本文出处: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批量创建数据库表的更多相关文章

  1. 基于CentOS的MySQL学习补充四--使用Shell批量从CSV文件里插入数据到数据表

    本文出处:http://blog.csdn.net/u012377333/article/details/47022699 从上面的几篇文章中,能够知道怎样使用Shell创建数据库.使用Shell创建 ...

  2. Activiti工作流学习笔记(三)——自动生成28张数据库表的底层原理分析

    原创/朱季谦 我接触工作流引擎Activiti已有两年之久,但一直都只限于熟悉其各类API的使用,对底层的实现,则存在较大的盲区. Activiti这个开源框架在设计上,其实存在不少值得学习和思考的地 ...

  3. MySQL学习(三)主备分库分表和恢复数据 --- 2019年2月

    1.MySQL主备切换 readonly 设置对超级(super)权限是无效的,而用于同步更新的线程,就拥有超级权限. 建议在做主备数据库的时候,将备用数据库设置为只读.(反向用readonly来判断 ...

  4. Cacti监控服务器配置教程(基于CentOS+Nginx+MySQL+PHP环境搭建)

    Cacti监控服务器配置教程(基于CentOS+Nginx+MySQL+PHP环境搭建) 具体案例:局域网内有两台主机,一台Linux.一台Windows,现在需要配置一台Cacti监控服务器对这两台 ...

  5. MYSQL学习笔记三:日期和时间函数

    MYSQL学习笔记三:日期和时间函数 1. 获取当前日期的函数和获取当前时间的函数 /*获取当前日期的函数和获取当前时间的函数.将日期以'YYYY-MM-DD'或者'YYYYMMDD'格式返回 */ ...

  6. MySql学习笔记三

    MySql学习笔记三 4.DML(数据操作语言) 插入:insert 修改:update 删除:delete 4.1.插入语句 语法: insert into 表名 (列名1,列名2,...) val ...

  7. 无法远程连接mysql,连接后也没有权限创建数据库

    问题现象:无法远程连接mysql,连接后也没有权限创建数据库 问题原因: MySql-Server 出于安全方面考虑只允许本机(localhost, 127.0.0.1)来连接访问. 这对于 Web- ...

  8. mysql学习笔记三 —— 数据恢复与备份

    要点: 1.存储引擎2.导入导出3.备份与恢复 查看当前数据库中的所有表use db1:show tables: 1.存储引擎 不同的发动机(引擎)适用的汽车类型不一样. 存储和处理的不同方式.不同的 ...

  9. MySQL学习笔记三:库和表的管理

    1.MySQL数据库服务配置好后,系统会有4个默认的数据库. information_schema:虚拟对象,其对象都保存在内存中 performance_schema:服务器性能指标库 mysql: ...

随机推荐

  1. Session,Token相关区别

    1. 为什么要有session的出现?答:是由于网络中http协议造成的,因为http本身是无状态协议,这样,无法确定你的本次请求和上次请求是不是你发送的.如果要进行类似论坛登陆相关的操作,就实现不了 ...

  2. mybatis-config.xml 模板

    ssm模板 <?xml version="1.0" encoding="UTF-8" ?>  <!DOCTYPE configuration  ...

  3. Java Scanner Readable

    通过implements(实现)Readbale interface(接口)的 read() method(方法) 实现自己添加字符到buffer里,然后读取 //策略模式package object ...

  4. Zookeeper集群搭建以及python操作zk

    一.Zookeeper原理简介 ZooKeeper是一个开放源码的分布式应用程序协调服务,它包含一个简单的原语集,分布式应用程序可以基于它实现同步服务,配置维护和命名服务等. Zookeeper设计目 ...

  5. STM32 串口通信使用奇偶校验

    STM32串口通信如果使用奇偶校验,需要设置数据位长度为9bit USART_InitStructure.USART_BaudRate = 9600; USART_InitStructure.USAR ...

  6. Boost学习资源

    http://blog.csdn.net/huang_xw/article/details/8758212

  7. Yeoman generator

    使用Yeoman generator来规范工程的初始化 前言 随着开发团队不断发展壮大,在人员增加的同时也带来了协作成本的增加:业务项目越来越多,类型也各不相同.常见的类型有基础组件.业务组件.基于R ...

  8. PLSQL Developer 中文显示乱码的解决方法

    PLSQL Developer 中文显示乱码是因为 Oracle 数据库所用的编码和 PLSQL Developer 所用的编码不同所导致的. 解决方法: 1. 先查询 Oracle 所用的编码 se ...

  9. BeautifulSoup使用总结

    一.介绍 BeautifulSoup为一个python库,它可以接收一个HTML或XML的字符串或文件,并返回一个BeautifulSoup对象,之后我们可以使用BeautifulSoup提供的众多方 ...

  10. 新手:Qt之QLabel类的应用

    在Qt中,我们不可避免的会用到QLabel类.而Qlabel的强大功能作为程序员的你有多少了解? 下面,跟着我一起在来学习一下吧! 1.添加文本 Qlabel类添加文本有两种方式,一种是直接在实现时添 ...