ebook img

WAP 2.0 Development PDF

398 Pages·2002·3.407 MB·English
by  TullChris
Save to my drive
Quick download
Download
Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.

Preview WAP 2.0 Development

WAP 2.0 <cost-effective development> <WMLScript> <development guildelines> <ASP> <cimages> <database integration> <cost-effective development> <WMLScrip <development guidelines> <ASP> <cimages> <database integration> <cost-effective development> <WMLScript> <development guidelines> <ASP> <cimag atabase integration> <cost-effective develoDpment>e <WMvLScreipt> <ldeveloopmentp guildmelines> e<ASPn> <cimatges> <database integration> <cost-effective develo nt> <WMLScript> <development guidelines> <ASP> <cimages> <database integration> <cost-effective development> <WMLScript> <development guideline 800 East 96th Street Chris Tull Indianapolis, Indiana 46240 WAP 2.0 Development Publisher David Culverwell Copyright©2002byQue® Corporation Executive Editor All rights reserved. No part of this book shall be reproduced, Candace Hall stored in a retrieval system, or transmitted by any means, Acquisitions Editor electronic, mechanical, photocopying, recording, or otherwise, Loretta Yates without written permission from the publisher. No patent liability Development Editors is assumed with respect to the use of the information contained Bryan Morgan herein. Although every precaution has been taken in the Sarah Robbins preparation of this book, the publisher and author assume no responsibility for errors or omissions. Nor is any liability Managing Editor assumed for damages resulting from the use of the information Thomas F. Hayes contained herein. Project Editor International Standard Book Number: 0-7897-2602-5 Tonya Simpson Production Editor Library of Congress Catalog Card Number: 2002100461 Megan Wade Printed in the United States of America Indexer First Printing: March 2002 Eric Schroeder Proofreader 07 06 05 4 3 2 Andrea Dugan Trademarks Technical Editor All terms mentioned in this book that are known to be trade- Allen Thompson marks or service marks have been appropriately capitalized. Team Coordinator Que Corporation cannot attest to the accuracy of this information. Cindy Teeters Use of a term in this book should not be regarded as affecting Interior Designer the validity of any trademark or service mark. Karen Ruggles Openwave, the Openwave logo, and SDKare registered trade- Cover Designer marks of Openwave Systems Inc. Nokia, the Nokia logo, and Bill Thomas the Mobile Internet Toolkit are registered trademarks of Nokia Page Layout Corporation. Microsoft, the Microsoft logo, Windows NT, Windows 2000, Windows XP, Windows 95, Windows 98, Windows 2000, Rebecca Harmon Microsoft Notepad, Microsoft Internet Explorer, Personal Web CherylLynch Server, Internet Information Server, ActiveX, VBScript, and Access are registered trademarks of Microsoft Corporation. Other product and Company names mentioned herein may be the registered trademarks of their respective owners. Warning and Disclaimer Every effort has been made to make this book as complete and as accurate as possible, but no warranty or fitness is implied. The information provided is on an “as is” basis. The author and the publisher shall have neither liability nor responsibility to any person or entity with respect to any loss or damages arising from the information contained in this book. Contents at a Glance Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1 Part I: Introduction to WAP Development 9 1 What Is WAPDevelopment? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .11 2 Tools of the Trade . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .23 3 The Wireless Markup Language (WML) . . . . . . . . . . . . . . . . . . . . . .43 4 Text Formatting for WML . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .63 5 Navigation Using WML . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .79 Part II: Static WAP Development 95 6 User Input with Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .97 7 Working with Images . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .113 8 Incorporating Timers into WAPApplications . . . . . . . . . . . . . . . . .129 Part III:Advanced WAP Development 147 9 Introduction to WMLScript . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .149 10 Variables and Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .169 11 Operators in WMLScript . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .189 12 Working with WMLScript Libraries . . . . . . . . . . . . . . . . . . . . . . .209 Part IV:Dynamic WAP Development 237 13 WAPDevelopment with ASP . . . . . . . . . . . . . . . . . . . . . . . . . . . . .239 14 An Introduction to DBMS Development . . . . . . . . . . . . . . . . . . . .255 15 Accessing Database Content from WAPDevices . . . . . . . . . . . . . .273 Part V: Reference 299 AWMLReference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .301 B WMLScript Reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .329 C WMLScript Libraries . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .345 D Troubleshooting Your WAPApplication . . . . . . . . . . . . . . . . . . . . . .359 E Wireless Development Resources . . . . . . . . . . . . . . . . . . . . . . . . . .365 Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .368 Table of Contents Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .1 Part I Introduction to WAP Development 9 1 What Is WAPDevelopment? . . . . . . . . . . . . . . . . . . . . . . . . . . . . .11 The State of the Wireless World . . . . . . . . . . . . . . . . . . . . . . . . . .12 AWireless Device Primer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .12 WAP-Enabled Phones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .13 What Exactly Is WAP, Anyway? . . . . . . . . . . . . . . . . . . . . . . . . . .14 How WAPWorks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .15 What Are Wireless Protocols? . . . . . . . . . . . . . . . . . . . . . . . . . . . .17 WAPApplication Design Practices . . . . . . . . . . . . . . . . . . . . . . . .19 Business Perspectives . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .20 Corporate Applications . . . . . . . . . . . . . . . . . . . . . . . . . . . . .20 Online Services . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .20 Personal Productivity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .21 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .21 2 Tools of the Trade . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .23 The Text Editors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .24 Microsoft Notepad . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .24 Helios TextPad . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .25 Allaire HomeSite . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .26 Device-Emulator Software . . . . . . . . . . . . . . . . . . . . . . . . . .26 Openwave’s SDK . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .28 The Nokia Mobile Internet Toolkit . . . . . . . . . . . . . . . . . . . .31 Commercial Software Development Tools . . . . . . . . . . . . . . . . . . .32 Dot WAP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .32 Yospace’s SmartPhone Emulator Developer Edition . . . . . . .33 Allaire ColdFusion Studio . . . . . . . . . . . . . . . . . . . . . . . . . .33 Getting Ready to Develop . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .36 What Is MIME? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .36 How MIME Works . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .36 Setting Up the Web Server . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .37 Adding MIME Types . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .38 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .40 v 3 The Wireless Markup Language (WML) . . . . . . . . . . . . . . . . . . . .43 What Is a Markup Language? . . . . . . . . . . . . . . . . . . . . . . . . . . . .44 WMLTerminology . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .45 WMLDecks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .45 WMLCards . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .45 WMLSyntax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .46 WMLDocument Prologue . . . . . . . . . . . . . . . . . . . . . . . . . . .46 Character Sets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .47 Case Sensitivity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .48 WAPDesign Considerations . . . . . . . . . . . . . . . . . . . . . . . . . . . . .48 Programming Considerations . . . . . . . . . . . . . . . . . . . . . . . . . . . .49 White Space . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .49 Comments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .50 WMLElements: The Building Blocks of WAPApplications .51 WMLAttributes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .52 Creating the WMLDeck . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .53 The HEAD Element . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .57 The META Element . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .58 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .60 4 Text Formatting for WML . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .63 Creating Paragraphs with the P Element . . . . . . . . . . . . . . . . . . .64 Incorporating Line Breaks with the BR Element . . . . . . . . . . . . . .68 Defining Styles for Your Text . . . . . . . . . . . . . . . . . . . . . . . . . . . . .69 Displaying Named Character Entities . . . . . . . . . . . . . . . . . . . . .70 Creating Tables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .73 The TABLE Element . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .74 The TR Element . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .74 The TD Element . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .74 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .76 5 Navigation Using WML . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .79 Specifying URLs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .80 Relative URLs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .80 Absolute URLs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .80 Defining Links . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .80 The ANCHOR Element . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .81 vi Assigning Events to Device Buttons . . . . . . . . . . . . . . . . . . . . . . .83 The DO Element . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .83 The ONEVENT Element . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .89 The WMLTask Elements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .90 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .91 Part II Static WAP Development 95 6 User Input with Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .97 Free-Form Input with the INPUT Element . . . . . . . . . . . . . . . . . . .98 Specifying Formatted Input . . . . . . . . . . . . . . . . . . . . . . . . .99 What Are Variables? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .106 Naming Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .107 Allowing User Input Through a List . . . . . . . . . . . . . . . . . . . . . .108 The SELECT Element . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .108 The OPTGROUP Element . . . . . . . . . . . . . . . . . . . . . . . . . . . . .108 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .110 7 Working with Images . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .113 Developmental Limitations of WAPDevices . . . . . . . . . . . . . . . .114 Bandwidth . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .114 Screen Size . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .115 The Wireless Bitmap Format . . . . . . . . . . . . . . . . . . . . . . . . . . . .115 Image Conversion Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .116 Image Conversion Desktop Tools . . . . . . . . . . . . . . . . . . . . .116 Online Image Converters . . . . . . . . . . . . . . . . . . . . . . . . . .118 Image Conversion Plug-Ins . . . . . . . . . . . . . . . . . . . . . . . . .118 The IMG Element . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .119 Creating an Application with a WBMPLogo . . . . . . . . . . .121 Creating an Application with Icons . . . . . . . . . . . . . . . . . . .124 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .126 8 Incorporating Timers into WAPApplications . . . . . . . . . . . . . . .129 What Are Timers? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .130 How Do Timers Work? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .130 The TIMER Element . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .130 Setting Time Intervals . . . . . . . . . . . . . . . . . . . . . . . . . . . .131 Adding Timer Functionality to a Splash Page . . . . . . . . . .131 Adding Timer Functionality to the Username Input . . . . .133 Allowing Users to Set the Time Interval . . . . . . . . . . . . . . .135 vii Animation Using the TIMER Element . . . . . . . . . . . . . . . . . . . . . .138 Resizing an Image . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .138 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .141 Part III Advanced WAP Development 147 9 Introduction to WMLScript . . . . . . . . . . . . . . . . . . . . . . . . . . . . .149 Why Use WMLScript? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .150 What Is WMLScript? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .150 How WMLScript Works . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .151 Referencing a WMLScript File . . . . . . . . . . . . . . . . . . . . . .152 Familiarizing Yourself with WMLScript Syntax . . . . . . . . . . . . .156 Case Sensitivity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .156 White Space . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .157 Adding Comments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .158 Semicolons . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .160 Using Statements Within Your WMLScript . . . . . . . . . . . . . . . .161 Expression . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .162 Block . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .162 if . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .162 while . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .162 for . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .162 break . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .163 Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .163 An Explanation of Statement One . . . . . . . . . . . . . . . . . . .163 An Explanation of Statement Two . . . . . . . . . . . . . . . . . . .164 An Explanation of Statement Three . . . . . . . . . . . . . . . . . .164 An Explanation of Statement Four . . . . . . . . . . . . . . . . . . .165 Opening and Closing Brackets . . . . . . . . . . . . . . . . . . . . . .166 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .167 10 Variables and Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .169 Dissecting a WAPApplication . . . . . . . . . . . . . . . . . . . . . . . . . . .170 Naming Conventions for Programming Constructs . . . . . .171 Reserved Words . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .172 WMLScript Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .172 Data Types in Action . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .174 Using Variables in WMLScript . . . . . . . . . . . . . . . . . . . . . . . . . .175 Declaring Multiple Variables (Declared Separately) . . . . . .175 Declaring Multiple Variables (Declared Together) . . . . . . .179 viii Using Functions in WMLScript . . . . . . . . . . . . . . . . . . . . . . . . . .180 The Structure of User-Created Functions . . . . . . . . . . . . . .181 The Structure of Built-In Functions . . . . . . . . . . . . . . . . . .181 Declaration of Arguments in a Function . . . . . . . . . . . . . . .182 Using Multiple User-Created Functions in WMLScript . . .182 AWord on Pragmas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .185 Creating Access Control Using Pragmas . . . . . . . . . . . . . . .185 Accessing External Information Using Pragmas . . . . . . . .186 Specifying Metadata with Pragmas . . . . . . . . . . . . . . . . . .187 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .187 11 Operators in WMLScript . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .189 What Are Operators? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .190 Assigning Values with the Assignment Operators . . . . . . . . . . .190 Simple Assignment (=) . . . . . . . . . . . . . . . . . . . . . . . . . . . . .191 Compound Addition Assignment (+=) . . . . . . . . . . . . . . . . .192 Creating Mathematical Functionality with the Arithmetic Operators . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .193 The Increment and Decrement Operators . . . . . . . . . . . . . .197 Creating Conditional Functionality with Comparison Operators . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .199 The Equality Operator (==) . . . . . . . . . . . . . . . . . . . . . . . . .200 The Inequality Operator (!=) . . . . . . . . . . . . . . . . . . . . . . . .201 Manipulating Strings with the WMLScript String Operators . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .202 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .205 12 Working with WMLScript Libraries . . . . . . . . . . . . . . . . . . . . . .209 What Are WMLScript Libraries? . . . . . . . . . . . . . . . . . . . . . . . . .210 The Syntax of Built-In Functions . . . . . . . . . . . . . . . . . . . . . . . .211 The Lang and Float Libraries . . . . . . . . . . . . . . . . . . . . . . . . . . .212 The Lang Library . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .212 The Float Library . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .215 An Example of the Lang.float Function . . . . . . . . . . . . . . .216 The String Library . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .220 The URLLibrary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .226 The WMLBrowser Library . . . . . . . . . . . . . . . . . . . . . . . . . . . . .228 The Dialogs Library . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .230 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .231 ix Part IV Dynamic WAP Development 237 13 WAPDevelopment with ASP . . . . . . . . . . . . . . . . . . . . . . . . . . . .239 Where Did Server-Side Technologies Come From? . . . . . . . . . . .240 Static Pages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .240 The Common Gateway Interface . . . . . . . . . . . . . . . . . . . . .240 Application Programming Interfaces . . . . . . . . . . . . . . . . .241 Active Server Pages to the Rescue . . . . . . . . . . . . . . . . . . .242 Configuring Your Test Environment . . . . . . . . . . . . . . . . . . . . . .243 Installing PWS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .244 Starting the PWS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .246 Testing Your PWS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .247 If Your PWS Is Not Working Correctly . . . . . . . . . . . . . . . .247 Adding MIME Types in PWS . . . . . . . . . . . . . . . . . . . . . . .248 Writing Your First ASP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .249 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .252 14 An Introduction to DBMS Development . . . . . . . . . . . . . . . . . . .255 What Is a Database Management System? . . . . . . . . . . . . . . . . .256 Databases . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .256 Tables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .256 Fields . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .257 Creating a Database . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .257 Creating the Employee Table . . . . . . . . . . . . . . . . . . . . . . .258 Retrieving Information from a Database . . . . . . . . . . . . . . . . . . .261 An Introduction to the Structured Query Language . . . . . . . . . .262 Viewing Data with the SELECT Statement . . . . . . . . . . . . . .262 Adding Data with the INSERT Statement . . . . . . . . . . . . . . .266 Modifying Data with the UPDATE Statement . . . . . . . . . . . .267 Deleting Data with the DELETE Statement . . . . . . . . . . . . .268 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .270 15 Accessing Database Content from WAPDevices . . . . . . . . . . . . .273 Using an ODBC DSN to Connect to Your Database . . . . . . . . . .274 Using Open Database Connectivity . . . . . . . . . . . . . . . . . .274 Using an ODBC Data Source Name . . . . . . . . . . . . . . . . . .274 Retrieving Information from a WAPApplication . . . . . . . . . . . . .277 Using ActiveX Data Objects . . . . . . . . . . . . . . . . . . . . . . . .278 Connecting to a Database Using the Connection Object . . .279 Selecting a Set of Records with SQL . . . . . . . . . . . . . . . . . .282

See more

The list of books you might like

Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.