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) 本文件用于創(chuàng)建tb_employeeinfo表,生成的腳本文件名為example.sql。
(2) Init函數(shù)用于在屏幕上輸出信息,CreateTable函數(shù)用于創(chuàng)建數(shù)據(jù)表。
(3) 在sh文件的結尾,要按順序?qū)⒈疚募乃泻瘮?shù)羅列出來,如本文件包括的函數(shù)是Init和CreateTable。
2. 生成sql文件的過程
(1) 上傳sh文件
使用FTP工具(如filezilla)將example.sh文件上傳到Linux的對應目錄下。
(2) 使用dos2unix命令修改文件格式
由于example.sh文件是在本地的Windows操作系統(tǒng)下編寫的,因此要先轉換為Linux下的格式才能使用。如果上傳后直接使用,會出現(xiàn)“Permissiondenied”的報錯信息。
dos2unix命令用來將DOS格式的文本文件轉換成UNIX格式的。其使用的格式為:dos2unix file,如果一次轉換多個文件,把這些文件名直接跟在dos2unix之后(dos2unixfile1 file2 file3 …)。
在這里,命令執(zhí)行如下:
zhou@linux:~/sql> dos2unix example.sh
dos2unix: converting file example.sh to UNIX format ...
(3) 使用chmod命令修改文件的權限
在執(zhí)行了dos2unix命令之后,還是不能立馬生成文件,還需要修改文件的權限。
chmod命令是Linux系統(tǒng)中最常用到的命令之一,用于改變文件或目錄的訪問權限。若想了解有關該命令的更多信息,請上網(wǎng)查詢。
在這里,命令為:chmod 777 example.sh
(4) 生成sql文件
直接運行帶后綴的sh文件名,即可生成sql文件。命令如下:
zhou@linux:~/sql> example.sh
example.sql no exits and is creating it
表示example.sql文件之前不存在,這是第一次生成。
再次執(zhí)行命令:
zhou@linux:~/sql> example.sh
example.sql is exits and is deleting it,then recreate it
表示example.sql文件已經(jīng)存在了,現(xiàn)在刪除后重新生成。
3. sql文件內(nèi)容
生成的sql文件名為example.sql,文件內(nèi)容如下:
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
在實際的軟件開發(fā)項目中,跨平臺操作是常有的事情。作為一名合格的軟件開發(fā)工程師,一定要熟練掌握不同操作系統(tǒng)下的操作流程及命令。