当前位置: 首页 > 图文教程 > 网络编程 > ASP.NET > 在程序中书写SQL语句

ASP.NET
关于.NET动态代理的介绍和应用简介
ASP.NET2.0服务器控件之类型转换器
ASP.net做的IP访问限制
Asp.Net2.0权限树中Checkbox的操作
ASP.NET数据库编程之Access连接失败
ASP.NET 2005 Treeview终极解决方案
ASP.NET数据库编程之处理文件访问许可
ASP.NET 2.0中的页面输出缓存
ASP.NET 2.0服务器控件开发之复杂属性
ASP.NET2.0中数据源控件之异步数据访问
將datagrid控件內容輸出到excel文件
ASP.NET技巧:教你制做Web实时进度条
实现基于事件通知的.Net套接字
ASP.NET技巧:同时对多个文件进行大量写操作对性能优化
ASP.NET中根据XML动态创建使用WEB组件
QQ关于.net的精彩对话
ASP.NET技巧:access下的分页方案
为自己的ASP网站系统构建一套标记语言
Visual Studio.Net 内幕(6)
Asp.Net中NHiernate的Session的管理

ASP.NET 中的 在程序中书写SQL语句


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-08-14   浏览: 156 ::
收藏到网摘: n/a

  园子里关于存储过程的讨论有很多,不少人建议将SQL语句写在程序中,这篇随笔讨论一下SQL语句在程序中的写法。

1string strSQL = "SELECT [AddressID], [AddressLine1], [AddressLine2], [City], [StateProvinceID], [PostalCode], [rowguid], [ModifiedDate] FROM [AdventureWorks].[Person].[Address] WHERE City = 'Bothell' ORDER BY AddressID";

  这是最普通的一种写法,而且在开发中被广泛采用。

                string strSQL =     "SELECT " +
                                        "[AddressID], " +
                                        "[AddressLine1], " +
                                        "[AddressLine2], " +
                                        "[City], " +
                                        "[StateProvinceID], " +
                                        "[PostalCode], " +
                                        "[rowguid], " +
                                        "[ModifiedDate] " +
                                    "FROM " +
                                        "[AdventureWorks].[Person].[Address] " +
                                    "WHERE " +
                                        "City = 'Bothell' " +
                                    "ORDER BY " +
                                        "AddressID";

  第二种写法,除了让人开着舒服一点外,没有任何好处。


        上图所示的写法要更好一点,可以降低维护难度,提高开发效率,团队开发中应该对这些小细节加以规定。其中,图中标示的第一点可以看看在SQL Server 2005中通过下图菜单生成的SQL语句,但不知道为什么SQL Server 2005的查询编辑器生成的SQL语句还是那么蹩脚。微软完全可以解析SQL语句并使之成为更有利于开发的格式。




        上图所示的写法要更好一点,可以降低维护难度,提高开发效率,团队开发中应该对这些小细节加以规定。其中,图中标示的第一点可以看看在SQL Server 2005中通过下图菜单生成的SQL语句,但不知道为什么SQL Server 2005的查询编辑器生成的SQL语句还是那么蹩脚。微软完全可以解析SQL语句并使之成为更有利于开发的格式。



  如果有两个表进行连接,INNER(LEFT/RIGHT) JOIN等语句也应该写在一行。另外,建议使用更简单的英文别名代替中文表名。