Chapter 3: TECHNOLOGIES USED
3.1 Visual Studio.NET
3.2 Microsoft SQL Server
3.3 ADO (ActiveX Data Objects) .NET
ADO.NET is a set of computer software components that can be used by programmers to access data and data services. It is a part of the base class library that is included with the Microsoft .NET Framework. It is commonly used by programmers to access and modify data stored in relational database systems, though it can also be used to access data in non-relational sources. ADO.NET is sometimes considered an evolution of ActiveX Data Objects (ADO) technology, but was changed so extensively that it can be considered an entirely new product.
ADO.NET consists of two primary parts:
3.3.1. Data provider:
These classes provide access to a data source, such as a Microsoft SQL Server or Oracle database and OLEDB data provider. Each data source has its own set of provider objects, but they each have a common set of utility classes:
- Connection: Provides a connection used to communicate with the data source. Also acts as an abstract factory for command objects.
- Command: Used to perform some action on the data source, such as reading, updating, or deleting relational data.
- Parameter: Describes a single parameter to a command. A common example is a parameter to a stored procedure.
- DataAdapter: A bridge used to transfer data between a data source and a DataSet object.
- DataReader: Used to efficiently process a large list of results one record at a time. It allows records to be accessed in a read-only, forward-only mode, i.e., records have to be accessed in sequential order; they can neither be randomly accessed nor can a record which has been processed previously be accessed again.
DataSet objects, a group of classes describing a simple in-memory relational database, were the star of the show in the initial release of the Microsoft .NET Framework. The classes form a containment hierarchy:
- A DataSet object represents a schema (either an entire database or a subset of one). It can contain tables and relationships between those tables.
- A DataTable object represents a single table in the database. It has a name, rows, and columns.
- A DataView object “sits over” a DataTable and sorts the data (much like a SQL “order by” clause) and filters the records (much like a SQL “where” clause) if a filter is set. An in-memory index is used to facilitate these operations. All DataTables have a default filter, while any number of additional DataViews can be defined, reducing interaction with the underlying database and thus improving performance.
- A DataColumn represents a column of the table, including its name and type.
- A DataRow object represents a single row in the table, and allows reading and updating of the values in that row, as well as retrieving any rows that are related to it through a primary-key foreign-key relationship.
- A DataRowView represents a single row of a DataView. The distinction between a DataRow and DataRowView is important when iterating over a result set.
- A DataRelation is a relationship between tables, such as a primary-key foreign-key relationship. This is useful for enabling DataRow’s functionality of retrieving related rows.
- A Constraint describes an enforced property of the database, such as the uniqueness of the values in a primary key column. As data is modified any violations that arise will cause exceptions.
A DataSet is populated from a database by a DataAdapter who’s Connection and Command properties have been set.
3.4 GSM_AT Commands
AT commands are instructions used to control a cell phone or modem. AT is the abbreviation of ATtention. The SMS specification has defined two modes in which a mobile phone can operate. They are called SMS text mode and SMS PDU mode (Protocol Data Unit). The mode that a mobile phone is operating in determines the syntax of some SMS AT commands and the format of the responses returned after execution. Below are the some of the most useful SMS AT commands:
+CMGF (Set the mode)
+CMGL (List Messages)
+CMGR (Read Message)
+CMGS (Send Message)
+CMGD (Delete Message)
When the mobile phone is operating in different modes, the defined values for certain parameters are different. Usually string values are defined for text mode while numeric values are defined for PDU mode. For example, the +CMGL AT commands is used to list SMS messages to be retrieved. The following table lists the defined values for the parameter in text mode and PDU mode:
|Message status||Defined values in text mode||Defined values in PDU mode|
|Received unread||“REC UNREAD”||0|
|Received read||“REC READ”||1|
|Stored unsent||“STO UNSENT”||2|
|Stored sent||“STO SENT”||3|
Leave a Reply