C#中执行批处理文件(.bat),执行数据库相关操作

此C#程序展示了如何通过执行批处理文件(autorun.bat)来运行SQL数据库操作。批处理文件包含osql命令,用于连接到127.0.0.1上的DataSample数据库,并导入C: est.sql文件中的SQL脚本。test.sql文件内容包括创建一个名为Area的表,带有主键约束。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Configuration;
using System.Data.SqlClient;
using System.Data;
using System.Diagnostics;

namespace Sample2
{
    class Program
    {
        static void Main(string[] args)
        {
            Process proc = null;
            try
            {
                /*
                 *   autorun.bat文件内容
                     osql -S 127.0.0.1 -d DataSample -U sa -P 1234567890 -i C:\test.sql
                 */
                string targetDir = string.Format(@"C:\");
                proc = new Process();
                proc.StartInfo.WorkingDirectory = targetDir;
                proc.StartInfo.FileName = "autorun.bat";
                proc.StartInfo.Arguments = string.Format("");//this is argument
                proc.StartInfo.CreateNoWindow = true;
                proc.StartInfo.WindowStyle = ProcessWindowStyle.Hidden;//这里设置DOS窗口不显示,经实践可行
                proc.Start();
                proc.WaitForExit();
                Console.ReadKey();
            }
            catch (Exception ex)
            {
                Console.WriteLine("Exception Occurred :{0},{1}", ex.Message, ex.StackTrace.ToString());
            }

            /*  test.sql内容
                USE [DataSample]
                GO

                SET ANSI_NULLS ON
                GO

                SET QUOTED_IDENTIFIER ON
                GO

                CREATE TABLE [dbo].[Area](
	                [AreaId] [int] IDENTITY(1,1) NOT NULL,
	                [AreaName] [nvarchar](50) NULL,
	                [CityId] [int] NULL,
                 CONSTRAINT [PK_Area] PRIMARY KEY CLUSTERED 
                (
	                [AreaId] ASC
                )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
                ) ON [PRIMARY]

                GO             
             */
        }
    }
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

smartsmile2012

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值