本书介绍如何用VB.NET和ADO.NET开发新一代数据库应用程序,包?╓eb上运行的切断应用程序,介绍了数据库编程的各个方面,包括GUI设计、中间件实现和服务器开发。如果你熟悉旧版ADO,则很快可以掌握ADO.NET的许多新特性。本书还介绍XML在新.NET机制中的重要性。这是各级编程人员的优秀参考资料。致谢写书是无法单独进行的。如果你做过作者,一定会对此深有体会。看上去是独自创作,其实需要各方面的帮助,需要朋友的爱与支持。如果没有这些爱与支持,则根本写不出这本书,我深深感谢下列人员帮我完成了这个项目。感谢本书的所有编辑和工作人员。感谢DeniseSantoroLincoln的热情,在困难之时打来电话,使一切得到缓解。感谢ElizabethCampbell的耐心和鼓励。感谢SharonWilkey用各种技巧“推动”我写出高质量图书。感谢EvangelosPetroutsos编写本书上一版本和本书第16章、第17章与附录。感谢Gunderloy编写第15章。还要感谢技术编辑JohnGodfrey和MartinReid,感谢RichllsardMills美好的卡片,感谢JudyFung的谋篇布局,感谢CarlMontgomery撰写了封面上的促销文字。感谢Sybex公司优秀的工作小组,但一切错误和笑话都应怪我自己。一个产品还没有稳定就要开始写书,这是很困难的,因此需要大量技术支持。谢谢RobHoward回答我无数的问题和将我介绍给一位高人,使我们成为好朋友。感谢MikePizzo改进了本书ADO.NET部分的质量。感谢BartonFriedland的个人支持和技术支持。感谢SusanWarren允许我借用了她在WindowsForms版本与用户控件方面的材料。感谢ScottBerry解释数据关联,感谢MichaelHarsh解释用户控件提示。感谢MartyWasznicky提供的大量资料,感谢RonanSorensen和ScottJamison的明智的建议。最亲爱的JayPunk,你既让人开心,又让人冷静。感谢ArthurBrost的精彩对话和技术审校,使我的作品更好看。感谢FrankJohnson-Suglia机智的比喻和非凡的解释。没有你们,我就不可能在编写本书时推出项目。感谢MarcRaderman从你的眼中就可以看到无尽的耐心、关心与热情。感谢BobHoog为我提供良好的机会,感谢StefDaskalakis,介绍我认识这些优秀的人,并把我首先介绍给Plural。生活是多彩的,感谢亲友们忍受我暂时离群索居。首先,感谢我的亲人,容忍总把“写到第几章了”作为谈话的开始。亲爱的Anne,AybenizBilgin,你是我最好的朋友,你多么无私、多么热情,多么真心助人。感谢Baba,厇kanBilgin,你心灵高尚,求知若渴。感谢姐姐Nesli,你是我们生活中的阳光,你的热情能融化一切。感谢Bilgin和Apak。当然还要感谢大家庭和BlackSheep家庭的SamanthaPanella(与Mike),DrennanLane(与Mike,Duke),Shamsi(与Mike)Gravel,SonyaFleur(与Chris—不是Mike—和Sophia)Powers,Julie(与Bob—不是Mike—和Katrina)Wieschusen。感谢Sam在我缺勤时没有打电话到RoommateFinders的助理局,而是报告我“出勤”,对我格外友好,我们的友谊是前所未闻的,无与伦比的。你是舞场中最好的高手,我的赠言是“旅行车是20世纪90年代的小货车”。Drennan煮得一手好菜,确实不同一般,我们的友谊更是不同一般。当她要乘飞机过来为我过生日,与Nam军队争论时,甚至都没有坐下来休息一会儿。ShamsiMan-darin,一口爱尔兰腔却要教我学广东话。JulieDredlocks,说我长得像苹果(我怎么也不觉得)。SonyaFleur,你的睿智与洞察力令人振奋,使我年轻了许多。还有离群索尼、许久不见的RJLeneweaver,你在哪里?我们收到你的信了。Spraga,我们要加班加点了。Exclusive,我们发现你的车了。Barney干吧,你知道什么时候要出手。旅行中掉队的人Tommy呢?他在哪里?也许正和Leneweaver与MaryOLeary一起,在Erin洒吧和Martin一起寻找AmandaHuginkiss。GoldMerc呢?找到Wolfie与Cecil和GL-10了吗?我替OtisP.Whlson感谢Brett“Alarmclock”Petersen,好久不见了,真想你们。感谢BrettDarylGaitan在欧州冒险时的精彩架机技巧,并让我们认识了他的奇妙家庭(David、Stephanie、Monique、Kelly、Barbara、Dana、Asia)让我从他那里得到温暖、爱和笑声。感谢DanielleAdams经常关心我的进度,我们几乎成为室友。感谢NicoleSapnar,做我的室友,尽管她胆子那么小,那些好玩的小故事很好地调节了气氛。感谢JeremiahStone、KristinBrooks与PattyMartins的来访和鼓励。感谢MattNunn的“成名”之行和对我的信任。感谢ChrisKunicki的鼓励。感谢Keith与AmandaCredendino,在我开始写书时,你们是单身;书写完时,你们已经结婚。感谢WilliamHurt、DavidBroome、B.J.Jones,你们是我的动力和灵感来源,最近可好?感谢DarrellLegault与KevinWatson告诉我如何发音“grease”和“eavestrough”。最后,感谢BryanY、PatrickI、Mulberry和Mike的兄弟,你们是超级明星,摇滚明星,使我在创作压力这么大的情况下,依然保持神智清醒。——AsliBilgin许多人对本书作出了贡献,谨此表示感谢。首先要感谢Microsoft公司推出VisualBasic。VisualBasic已经从小小的编程环境变成一流开发工具。感谢Sybex公司各位高人。——EvangelosPetroutsos序你是否要建立与数据库交互的VisualBasic.NET应用程序?如果是,则本书是向你介绍如何在实际应用程序中编程和使用数据库的实用指南,书中介绍了各方面的课题,对初学者和专家都很有用,一定要抓住这本书。AsliBilgin是全局方案供应商Plural公司的技术建筑师、作者和演讲人。EvangelosPetro-utsos已经编写多本Microsoft技术书籍。作者将实际数据库编程知识和技巧介绍给读者,不仅深入介绍编程模型,而且深入介绍理论与体系结构。本书不仅介绍如何用MicrosoftVisualBasic.NET编程,而且介绍代码的来由。书中提供的实际例子(如购物车系统)可以作为自己建立系统的基础。了解按某种方式设计应用程序的原因之后,就可以设计更有效更稳定的系统。本书中,Asli与Evangelos提供了应用程序设计的技巧与要点,帮助提高性能、可重复性和伸缩性。本书第一部分首先概述数据库概念,简要介绍数据库及数据访问技术的概貌,介绍关系型数据库中的基本概念,如常见数据库对象与范化。然后第一部分继续介绍数据库规划与开发过程中可用的图形化工具,最后一章介绍与数据库通信的结构化查询语言(SQL)。在第二部分,作者介绍在第一部分的基础上建立的编程概念。第1章针对使用MicrosoftSQLServer的TransactionSQL(T-SQL)数据层编程,介绍如何用T-SQL编程存储过程、函数、触发器和事务,这些特性如何提高应用程序性能和伸缩性。例如,Asli与Evangelos详细介绍应用程序中为什么要使用存储过程。介绍数据层编程之后,转入介绍ADO.NET,这是.NETFramework提供的数据层编程类库。作者首先介绍一个ADO.NET例子,然后介绍这个对象模型的技术方面和日常编程ADO.NET时使用的类。通过介绍ConnectionCommand、DataReader与DataSet等几个重要类,可以了解应用程序中成功利用这些类所需的知识和技巧。后一章ADO.NET编程中阐明这些类如何应用到实际编程与应用程序设计中,并介绍了过滤、查找、调用存储过程等的例子。第三部分介绍更高级的课题,包括线程问题、XML集成、中间层编程以及一些高级MicrosoftSQLServer2000问题。本书最后一部分是一组实用章节,介绍如何管理与处理用ASP.NET建立的数据支持Web应用程序。Asli与Evangelos介绍使用ASP.NETWeb服务通过XML接口用SOAP连接与共享数据,以及ASP.NET页面和应用程序设计问题,包括ASP.NET内置的缓存功能。总之,本书向读者提供了大量有用信息,初学者和专家都用得上。如果要用.NETFramework建立更好的数据库应用程序,请一定要阅读本书。RobHowardASP.NET项目经理.NETFramework小组Microsoft公司简介过去,用VisualBasic进行数据库编程时,是什么样子呢?是不是用Access数据库加一些Windows表格,用一些数据关联DAO控件连接起来?这种应用程序在VB5中非常普及,到VB6也还很常见。这些应用程序有什么问题呢?没有。通常,它们在当时的时间和环境下是合理的。但是,它们不适合Internet时代,没有真正的伸缩性。一般来说,这些应用程序要求有状态连接和维护与后端数据库的持久连接。这种前端与后端紧密集成使系统很难维护。改变数据模型时,会影响前端;改变前端时,会影响