一起谈.NET技术,ASP.NET调用.sql文件

简介:   笔者好久没有写随笔了,这次是遇到提出这样的问题“不用附加数据库,什么修改web.config什么的那么麻烦,而是直接运行一个页面,然后根据向导一步一步引导用户安装生成数据库”那么这样做就需要一个创建数据库的语句和创建这些数据库表的语句,还有这些创建数据库视图以及函数的语句。

  笔者好久没有写随笔了,这次是遇到提出这样的问题“不用附加数据库,什么修改web.config什么的那么麻烦,而是直接运行一个页面,然后根据向导一步一步引导用户安装生成数据库”那么这样做就需要一个创建数据库的语句和创建这些数据库表的语句,还有这些创建数据库视图以及函数的语句。创建数据库语句好办。

 
 
" IF Not EXISTS ( select name from master.dbo.sysdatabases where name = N ' " + DataBaseName+ " ' ) CREATE DATABASE " + DataBaseName
"
Use [ " + DataBaseName+ " ] ;"

  在asp.net中的cs文件中像执行sql语句一样执行就行了。

  那么创建数据库的语句怎么得到呢?一个方法是设计数据库的文件中直接生成,另外一个方法从现有的数据库中获得。选取数据库点击反键如图:

  然后选择任务的生成脚本:

  下面弹出来的对话框中的选择笔者相信大家都会,按照自己所需选择,不知道的就不要管了。但是要注意这个页面:

  首先这里只选择表,因为仅仅是需要表的执行语句。那么可以生成一个.sql文件。笔者这里命名为:CreateTable.sql。

  那么我们只用在cs文件中读取CreateTable.sql中的字符串即可像sql语句一样执行:

 
 
StreamReader strRead = File.OpenText( " D:\\CareateTable.sql " );
string strContent = strRead .ReadToEnd();
strRead .Close();
SqlConnection con
= new SqlConnection();
con
= " 连接数据库字符串 " ;
SqlCommond com
= new SqlCommond();
com.Connection
= con;
com.CommandTest
= strContent;
com.CommandType
= CommandType.Text;
con.Open();
try
{
con.ExecuteNonQuery();
}
catch (Exception ex)
{
......
}
finally
{
conn.Close();
}

  那么会发现报错,就是go语句附近有错误。可以利用word替换go成""那么在运行程序就发现数据库表也就创建出来了。

  那么可能会遇到这种情况,数据库包含存储过程,视图,函数等。这就是笔者遇到的情况。那么此时就需要在那个特别的图上全选。然而笔者照上面的做总是会报错,但是在sql里执行就没有报错。最终也终于解决该问题:

 
 
Process sqlprocess = new Process();
sqlprocess.StartInfo.FileName
= " osql.exe " ;
// U为用户名,P为密码,S为目标服务器的ip,infile为数据库脚本所在的路径
sqlprocess.StartInfo.Arguments = String.Format( " -U {0} -P {1} -S {2} -i {3} -d {4} " ,
" sa " , " asd123 " , " 127.0.0.1 " , " D:\\CreateTable.sql " ,DataBaseName);
sqlprocess.Start();
// 等待程序执行.Sql脚本
sqlprocess.WaitForExit();
sqlprocess.Close();
Response.Write(
" <script>alert('Ok.');</script> " );

  这样在asp.net中就可以调用.sql文件了。

目录
相关文章
|
19天前
|
SQL 小程序 API
如何运用C#.NET技术快速开发一套掌上医院系统?
本方案基于C#.NET技术快速构建掌上医院系统,结合模块化开发理念与医院信息化需求。核心功能涵盖用户端的预约挂号、在线问诊、报告查询等,以及管理端的排班管理和数据统计。采用.NET Core Web API与uni-app实现前后端分离,支持跨平台小程序开发。数据库选用SQL Server 2012,并通过读写分离与索引优化提升性能。部署方案包括Windows Server与负载均衡设计,确保高可用性。同时针对API差异、数据库老化及高并发等问题制定应对措施,保障系统稳定运行。推荐使用Postman、Redgate等工具辅助开发,提升效率与质量。
|
2月前
|
SQL 存储 关系型数据库
【SQL技术】不同数据库引擎 SQL 优化方案剖析
不同数据库系统(MySQL、PostgreSQL、Doris、Hive)的SQL优化策略。存储引擎特点、SQL执行流程及常见操作(如条件查询、排序、聚合函数)的优化方法。针对各数据库,索引使用、分区裁剪、谓词下推等技术,并提供了具体的SQL示例。通用的SQL调优技巧,如避免使用`COUNT(DISTINCT)`、减少小文件问题、慎重使用`SELECT *`等。通过合理选择和应用这些优化策略,可以显著提升数据库查询性能和系统稳定性。
110 9
|
4月前
|
开发框架 算法 .NET
C#/.NET/.NET Core技术前沿周刊 | 第 15 期(2024年11.25-11.30)
C#/.NET/.NET Core技术前沿周刊 | 第 15 期(2024年11.25-11.30)
|
4月前
|
开发框架 Cloud Native .NET
C#/.NET/.NET Core技术前沿周刊 | 第 16 期(2024年12.01-12.08)
C#/.NET/.NET Core技术前沿周刊 | 第 16 期(2024年12.01-12.08)
|
5月前
|
机器学习/深度学习 人工智能 Cloud Native
在数字化时代,.NET 技术凭借其跨平台兼容性、丰富的类库和工具集以及卓越的性能与效率,成为软件开发的重要平台
在数字化时代,.NET 技术凭借其跨平台兼容性、丰富的类库和工具集以及卓越的性能与效率,成为软件开发的重要平台。本文深入解析 .NET 的核心优势,探讨其在企业级应用、Web 开发及移动应用等领域的应用案例,并展望未来在人工智能、云原生等方面的发展趋势。
88 3
|
5月前
|
敏捷开发 缓存 中间件
.NET技术的高效开发模式,涵盖面向对象编程、良好架构设计及高效代码编写与管理三大关键要素
本文深入探讨了.NET技术的高效开发模式,涵盖面向对象编程、良好架构设计及高效代码编写与管理三大关键要素,并通过企业级应用和Web应用开发的实践案例,展示了如何在实际项目中应用这些模式,旨在为开发者提供有益的参考和指导。
67 3
|
4月前
|
监控 前端开发 API
一款基于 .NET MVC 框架开发、功能全面的MES系统
一款基于 .NET MVC 框架开发、功能全面的MES系统
113 5
|
7月前
|
开发框架 前端开发 JavaScript
ASP.NET MVC 教程
ASP.NET 是一个使用 HTML、CSS、JavaScript 和服务器脚本创建网页和网站的开发框架。
116 7
|
7月前
|
存储 开发框架 前端开发
ASP.NET MVC 迅速集成 SignalR
ASP.NET MVC 迅速集成 SignalR
145 0
|
11月前
|
开发框架 前端开发 .NET
ASP.NET CORE 3.1 MVC“指定的网络名不再可用\企图在不存在的网络连接上进行操作”的问题解决过程
ASP.NET CORE 3.1 MVC“指定的网络名不再可用\企图在不存在的网络连接上进行操作”的问题解决过程
274 0

热门文章

最新文章