mysql 怎么执行sql文件

mysql 怎么执行sql文件,第1张

基本步骤如下:

1、创建包含sql命令的sql脚本文件

文件中包含一些列的sql语句,每条语句最后以结尾,文件内容示例如下:

--创建表,使用“--”进行注释

create table 表名称(Guid Varchar(38) not null primary key,

Title Varchar(255),

) TYPE=InnoDB

--在表A中增加字段Status

alter table A add Status TinyInt default '0'

--在表A上创建索引

create index XX_TaskId_1 on A(Id_)

--在表A中添加一条记录

Insert into A (Id,ParentId, Name) values(1,0,'名称')

--添加、修改、删除数据后,有可能需要提交事务Commit2、执行sql脚本文件

方法一 使用cmd命令执行(windows下,unix或linux在的其控制台下)

【Mysql的bin目录】\mysql –u用户名 –p密码 –D数据库<【sql脚本文件路径全名】,示例:

D:\mysql\bin\mysql –uroot –p123456 -Dtest<d:\test\ss.sql注意:A、如果在sql脚本文件中使用了use 数据库,则-D数据库选项可以忽略

B、如果【Mysql的bin目录】中包含空格,则需要使用“”包含,如:“C:\Program Files\mysql\bin\mysql” –u用户名 –p密码 –D数据库<【sql脚本文件路径全名】

方法二 进入mysql的控制台后,使用source命令执行

在项目开发中,我们常常会用到根据不同条件,执行不同的sql,在mysql中可以用 IF(expr1,expr2,expr3) 来满足这个需求。下面我给大家一个示例:

示例1:sql比较复杂

SELECT

if(dom.PLAN_NO is null,

(ifnull( ( SELECT sum( DELIVERY_QTY ) FROM delivery_order_materiel WHERE 1=1 and PO_NO=pom.PO_NO and MATERIEL_CODE = pom.MATERIEL_CODE ), 0 )),

ifnull( ( SELECT sum( DELIVERY_QTY ) FROM delivery_order_materiel WHERE POM_PM_CODE = pom.PM_CODE AND PLAN_NO = dpm.PLAN_NO ), 0 )

)AS tempFiled

from tableName

where 1=1

示例2:

SELECT

if(dom.PLAN_NO=1,

( SELECT sum( DELIVERY_QTY ) FROM delivery_order_materiel WHERE 1=1 and PO_NO=pom.PO_NO and MATERIEL_CODE = pom.MATERIEL_CODE ),

( SELECT sum( DELIVERY_QTY ) FROM delivery_order WHERE 1=1 AND PLAN_NO = dpm.PLAN_NO )

)AS tempFiled

from tableName

where 1=1


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/7285774.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-03
下一篇 2023-04-03

发表评论

登录后才能评论

评论列表(0条)

保存