Linux在什么样的从脚本文件数据库sh格式改变sql格式
在软件开发过程中,经常参与Linux从下一个脚本文件数据库sh格式改变sql格式问题。在本文中,一个实际的脚本文件,例如。描述格式转换过程。
1. sh文件内容
本文中的文件名称为example.sh,其内容例如以下:
#!/bin/bash
function Init()
{
if [ -f"example.sql" ]
then
echo"example.sql is exits and is deleting it,then recreate it"
rm -fexample.sql
else
echo"example.sql no exits and is creating it"
fi
echo " usezxdbp_166 ">>example.sql
echo " go">>example.sql
}
function CreateTable()
{
cat>>example.sql<< EOF
create table tb_employeeinfo
(
employeeno varchar(20) not null, -- 员工工号
employeename varchar(20) not null, -- 员工姓名
employeeage int null -- 员工年龄
);
create unique index idx1_tb_employeeinfo ontb_employeeinfo(employeeno);
create index idx2_tb_employeeinfo ontb_employeeinfo(employeename);
print 'create table tb_employeeinfo ok'
go
EOF
}
## Execute function
Init
CreateTable
说明:
(1) 本文件用于创建tb_employeeinfo表。生成的脚本文件名称为example.sql。
(2) Init函数用于在屏幕上输出信息,CreateTable函数用于创建数据表。
(3) 在sh文件的结尾。要按顺序将本文件所包括的全部函数罗列出来,如本文件包括的函数是Init和CreateTable。
2. 生成sql文件的过程
(1) 上传sh文件
使用FTP工具(如filezilla)将example.sh文件上传到Linux的相应文件夹下。
(2) 使用dos2unix命令改动文件格式
因为example.sh文件是在本地的Windows操作系统下编写的。因此要先转换为Linux下的格式才干使用。
假设上传后直接使用,会出现“Permissiondenied”的报错信息。
dos2unix命令用来将DOS格式的文本文件转换成UNIX格式的。其使用的格式为:dos2unix file,假设一次转换多个文件,把这些文件名称直接跟在dos2unix之后(dos2unixfile1 file2 file3 …)。
在这里,命令运行例如以下:
zhou@linux:~/sql> dos2unix example.sh
dos2unix: converting file example.sh to UNIX format ...
(3) 使用chmod命令改动文件的权限
在运行了dos2unix命令之后,还是不能立刻生成文件,还须要改动文件的权限。
chmod命令是Linux系统中最经常使用到的命令之中的一个,用于改变文件或文件夹的訪问权限。若想了解有关该命令的很多其它信息。请上网查询。
在这里,命令为:chmod 777 example.sh
(4) 生成sql文件
直接运行带后缀的sh文件名称,就可以生成sql文件。
命令例如以下:
zhou@linux:~/sql> example.sh
example.sql no exits and is creating it
表示example.sql文件之前不存在。这是第一次生成。
再次运行命令:
zhou@linux:~/sql> example.sh
example.sql is exits and is deleting it,then recreate it
表示example.sql文件已经存在了,如今删除后又一次生成。
3. sql文件内容
生成的sql文件名称为example.sql。文件内容例如以下:
use zxdbp_166
go
create table tb_employeeinfo
(
employeeno varchar(20) not null, -- 员工工号
employeename varchar(20) not null, -- 员工姓名
employeeage int null -- 员工年龄
);
create unique index idx1_tb_employeeinfo ontb_employeeinfo(employeeno);
create index idx2_tb_employeeinfo ontb_employeeinfo(employeename);
print 'create table tb_employeeinfo ok'
go
在实际的软件开发项目中。跨平台操作是常有的事情。作为一名合格的软件开发project师,一定要熟练掌握不同操作系统下的操作流程及命令。
(本人微博:http://weibo.com/zhouzxi?topnav=1&wvr=5,我们聊天号码:245924426。欢迎关注!
)
版权声明:本文博客原创文章。博客,未经同意,不得转载。
Linux在什么样的从脚本文件数据库sh格式改变sql格式的更多相关文章
- Linux下如何将数据库脚本文件从sh格式变为sql格式
在从事软件开发的过程中,经常会涉及到在Linux下将数据库脚本文件从sh格式变为sql格式的问题.本文以一个实际的脚本文件为例,说明格式转换的过程. 1. sh文件内容 本文中的文件名为 ...
- linux上执行mysql的脚本文件
我们测试过程中,经常需要执行升级脚本或导入生产测试数据,对于轻量的升级脚本可以直接在客户端工具中打开执行,但是对于文件内容比较大的.sql文件,比如几百M,几G的sql文件,直接拖到客户端工具打开执行 ...
- Linux下dos2unix命令将windows文件编码格式dos转换成Unix格式
问题描述: 在Windows系统下面使用文本编辑器notepad后传到Linux系统下的话 Linux下处理和执行一般都存在一些问题,我们可以通过命令查看文件是否是dos格式的, 如果有如图所示的M标 ...
- shell 脚本文件类型.sh ,变量
1. shell脚本编程的基本过程 (1)建立shell文件,以 .sh 结尾的文件 (2)赋予shell文件执行权限,chmod 0777 文件名 (3)执行shell文件, ./ 文件名 或者ba ...
- 【转】【MySql】脚本备份数据库
#!/bin/bash #this is a script of mysql backup if [ ! -d /mydata/data1/backup ] ;then mkdir /mydata/d ...
- 《Linux命令行与shell脚本编程大全》 第二十三章 学习笔记
第二十三章:使用数据库 MySQL数据库 MySQL客户端界面 mysql命令行参数 参数 描述 -A 禁用自动重新生成哈希表 -b 禁用 出错后的beep声 -B 不使用历史文件 -C 压缩客户端和 ...
- 【MySql】脚本备份数据库
#!/bin/bash #this is a script of mysql backup #Mysql="mysql" #MysqlDump="mysqldump&qu ...
- dos2unix(windows脚本文件放到unix下运行要注意)
在windows下编写的shell脚本文件,直接放到linux下运行,是不行的. infiniDB的倒库脚本文件load.sh,将tbl文件导入infiniDB,怎么运行不成功,不建job.运来,是w ...
- jenkins部署java项目,脚本文件放在远程仓库中 和jar一起打包(六)
jenkins部署java项目到远程linux上,脚本文件和项目一起上传到gogs上,直接执行gogs上的脚本文件来执行项目 (1)新建maven项目 pom.xml的配置 <project x ...
随机推荐
- 开源 免费 java CMS - FreeCMS1.9 会员组管理
项目地址:http://www.freeteam.cn/ 会员组管理 会员组分为两种,一级是经验会员组,一种是特殊会员组. 经验会员组的会员会依据经验自己主动变更,特殊会员组不会自己主动变更,须要管理 ...
- 在项目里交叉使用Swift和OC
Swift and Objective-C in the Same Project 在项目里交叉使用Swift和OC Swift与OC的兼容性使得你能够在项目里使用Swift+OC的方式编写应用程序, ...
- FusionCharts參数中文说明
FushionCharts是把抽象数据图示化的套件,使用方便,配置简单.其相关參数中文说明例如以下. 功能特性 animation 是否动画显示数据,默觉得 1( ...
- hdu1754(splay)
给n个数,有两种操作 Q a b 询问区间[a,b]的最大值, U a b 将第a个数的值改成b splay树的中序遍历是我们所维护的序列.如果要询问区间[a,b]的最大值,那么只要将第a ...
- Windows Phone开发(46):与Socket有个约会
原文:Windows Phone开发(46):与Socket有个约会 不知道大家有没有"谈Socket色变"的经历?就像我一位朋友所说的,Socket这家伙啊,不得已而用之.哈,S ...
- Java 理论与实践: 处理 InterruptedException(转)
很多 Java™ 语言方法,例如 Thread.sleep() 和 Object.wait(),都可以抛出InterruptedException.您不能忽略这个异常,因为它是一个检查异常(check ...
- hdu2175汉诺塔IX
汉诺塔IX Time Limit: 3000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total Subm ...
- 【翻译】Why JavaScript Is and Will Continue to Be the First Choice of Programmers
花费2半小时,那么最终会被翻译.假设有问题,请提出,毕竟,自己的6不超过级别. 附加链接 Why JavaScript Is and Will Continue to Be the First Cho ...
- uIP中国的协议文件:Ch01
uIP0.9 参考 by Doxygen 1.3.3 Tue Oct 7 15:51:00 2003 译: fishOnFly(鱼在飞) uIP-refman中文pdf下载 第1章 uIP TCP/ ...
- 导出csv文件时,处理分隔符问题(转)
转自:http://blog.sina.com.cn/s/blog_468530a60100kjpy.html CSV文件默认以英文逗号做为列分隔符,换行符作为行分隔符. 如果不提供网页形式只用命令行 ...