[Mono-docs-list] Npgsql docs update

Fawad Halim fawad@fawad.net
Tue, 14 Oct 2003 07:44:14 -0500


This is a multi-part message in MIME format.
--------------020900040806040402020705
Content-Type: text/plain; charset=us-ascii; format=flowed
Content-Transfer-Encoding: 7bit

Attached is a diff containing updates to several Npgsql docs.

Is there a standard way of creating Examples pages in ECMA that we can 
reference from the topics or do the common examples have to be copied in 
each topic?


Regards
-fawad

--------------020900040806040402020705
Content-Type: text/plain;
 name="Npgsql_updates.diff"
Content-Transfer-Encoding: 7bit
Content-Disposition: inline;
 filename="Npgsql_updates.diff"

Index: class/Npgsql//en/Npgsql/NpgsqlCommand.xml
===================================================================
RCS file: /mono/monodoc/class/Npgsql/en/Npgsql/NpgsqlCommand.xml,v
retrieving revision 1.1
diff -r1.1 NpgsqlCommand.xml
12,13c12,30
<     <summary>To be added</summary>
<     <remarks>To be added</remarks>
---
>     <summary>Represents a command to be executed against the PostgreSQL database backend.</summary>
>     <remarks>
> 	<para>
> 		An NpgsqlCommand object is associated with a <see cref="T:Npgsql.NpgsqlConnection" /> instance.It can be used to execute
> 		SQL statements (SELECT, INSERT, UPDATE, DELETE, etc.), stored procedures and functions against the database the <see cref="T:Npgsql.NpgsqlConnection" />
> 		instance referenced in the <see cref="P:Npgsql.NpgsqlCommand.Connection" /> is associated with.
> 	</para>
> 	<para>
> 		As the NpgsqlCommand implements the <see cref="T:System.Data.IDbCommand" /> interface, it can be used to
> 		<list type="bullet">
> 			<item><term>Execute queries without expecting a result back using the 
> 				<see cref="M:Npgsql.NpgsqlCommand.ExecuteNonQuery" /> method</term></item>
> 			<item><term>Execute queries only a single (scalar) result back using the
> 				<see cref="M:Npgsql.NpgsqlCommand.ExecuteScalar" /> method</term></item>
> 			<item><term>Execute queries without expecting a
> 				<see cref="Npgsql.NpgsqlDataReader" /> back using the <see cref="M:Npgsql.NpgsqlCommand.ExecuteDataReader" /></term></item>
> 		</list>
> 	</para>
> 	</remarks>
73,75c90,138
<         <summary>To be added</summary>
<         <returns>a <see cref="T:System.Int32" /></returns>
<         <remarks>To be added</remarks>
---
>         <summary>Executes a query against the database backend without expecting data back from it</summary>
>         <returns>A <see cref="T:System.Int32" /> containing the number of records affected on the database by the query</returns>
>         <remarks>
> 			<para>
> 				The <see cref="M:Npgsql.NpgsqlCommand.ExecuteNonQuery" /> method is used to execute a query against the database
> 				without exepecting a result back. This is useful for running data manipulation commands, etc.
> 			</para>
> 			<para>
> 				The following example demonstrates the use of the method against a database. For the example to work, a user 'joe'
> 				with the password 'secret' needs to have access to the 'table1' table in the 'joedata' database created with the SQL
> 			</para>
> 			<c>
> 				CREATE TABLE table1 (int1 INTEGER, int2 INTEGER);
> 			</c>
> 			<code lang="C#">
> /* Compiling:
>  * 	mcs -r:Npgsql -r:System.Data NpgsqlExecuteNonQuery.cs
>  */
> using System;
> using System.Data;
> using Npgsql;
> 
> public class NpgsqlExecuteNonQuery
> {
> 	public static void Main(String[] args)
> 	{
> 		NpgsqlConnection conn = new NpgsqlConnection("Server=127.0.0.1;Port=5432;User Id=joe;Password=secret;Database=joedata;");
> 		conn.Open();
> 		
> 		NpgsqlCommand command = new NpgsqlCommand("insert into table1 values(1, 1)", conn);
> 		Int32 rowsaffected;
> 		
> 		try
> 		{
> 			rowsaffected = command.ExecuteNonQuery();
> 			Console.WriteLine("Just added {0} lines in the table table1", rowsaffected);
> 		}
> 		finally
> 		{
> 			conn.Close();
> 		}
> 	}
> } 
> 			</code>
> 			<para>
> 			Executing the query should give the output
> 			</para>
> 			<c>Just added 1 lines in the table table1</c>
> 		</remarks>
115,117c178,253
<         <summary>To be added</summary>
<         <returns>a <see cref="T:System.Object" /></returns>
<         <remarks>To be added</remarks>
---
>         <summary>Executes a query against the <see cref="T:Npgsql.NpgsqlConnection" /> and expects a single value as output</summary>
>         <returns>a <see cref="T:System.Object" /> containing the output value.</returns>
>         <remarks>
> 		<para>
> 			This command returns a single value as the output of the command execution.
> 		</para>
> 		<code lang="C#">
> using System;
> using System.Data;
> using Npgsql;
> 
> public class NpgsqlExecuteScalar
> {
> 	public static void Main(String[] args)
> 	{
> 		NpgsqlConnection conn = new NpgsqlConnection("Server=127.0.0.1;Port=5432;User Id=joe;Password=secret;Database=joedata;");
> 		conn.Open();
> 		
> 		NpgsqlCommand command = new NpgsqlCommand("select version()", conn);
> 		String serverversion;
> 		
> 		try
> 		{
> 			serverversion = (String)command.ExecuteScalar();
> 			Console.WriteLine("PostgreSQL server version: {0}", serverversion);
> 		}
> 		finally
> 		{
> 			conn.Close();
> 		}
> 	}
> }
> 		</code>
> 		<para>
> 			Compiling and executing the above code gives the output
> 		</para>
> 		<c>PostgreSQL server version: PostgreSQL 7.3.2 on i386-redhat-linux-gnu, compiled by GCC i386-redhat-linux-gcc (GCC) 3.2.2 20030213 (Red Hat Linux 8.0 3.2.2-1)</c>
> 		<para>
> 			If a query is executed that returns more than one column and/or more than one row, only the first column in the first row is returned.
> 			
> 			For example, tweaking the above example to make it
> 		<code Lang="C#">
> using System;
> using System.Data;
> using Npgsql;
> 
> public class NpgsqlExecuteScalar
> {
> 	public static void Main(String[] args)
> 	{
> 		NpgsqlConnection conn = new NpgsqlConnection("Server=127.0.0.1;Port=5432;User Id=joe;Password=secret;Database=joedata;");
> 		conn.Open();
> 		
> 		NpgsqlCommand command = new NpgsqlCommand("select version(), upper('foo')", conn);
> 		String serverversion;
> 		
> 		try
> 		{
> 			serverversion = (String)command.ExecuteScalar();
> 			Console.WriteLine("PostgreSQL server version: {0}", serverversion);
> 		}
> 		finally
> 		{
> 			conn.Close();
> 		}
> 	}
> }
> 		</code>
> 		
> 		still prints
> 		</para>
> 		<c>PostgreSQL server version: PostgreSQL 7.3.2 on i386-redhat-linux-gnu, compiled by GCC i386-redhat-linux-gcc (GCC) 3.2.2 20030213 (Red Hat Linux 8.0 3.2.2-1)</c>
> 		<para>
> 			Note that the exact output in the above will vary depending on the exact version of the database.
> 		</para>
> 		</remarks>
232,234c368,374
<         <summary>To be added</summary>
<         <returns>a <see cref="T:Npgsql.NpgsqlConnection" /></returns>
<         <remarks>To be added</remarks>
---
>         <summary>Connection to the PostgreSQL backend</summary>
>         <returns>a <see cref="T:Npgsql.NpgsqlConnection" /> object</returns>
>         <remarks>
> 			The Connection property is a reference to the <see cref="T:Npgsql.NpgsqlConnection" /> the commands will be executed against.
> 			The connection must be open before the command can be executed. If a command is executed against a closed connection,
> 			a <see cref="T:System.InvalidOperationException" /> is thrown.
> 		</remarks>
Index: class/Npgsql//en/Npgsql/NpgsqlConnection.xml
===================================================================
RCS file: /mono/monodoc/class/Npgsql/en/Npgsql/NpgsqlConnection.xml,v
retrieving revision 1.1
diff -r1.1 NpgsqlConnection.xml
13c13,19
<     <remarks>To be added</remarks>
---
>     <remarks>
> 		<para>
> 		This represents a unique connection to a PostgreSQL database backend. The connection is used in conjunction with other classes
> 		in the <see cref="N:Npgsql" /> provider like <see cref="T:Npgsql.NpgsqlCommand" />, <see cref="T:Npgsql.NpgsqlDataReader" />, and
> 		<see cref="T:Npgsql.NpgsqlDataAdapter" /> to fetch, add, update, or delete data in the database.
> 		</para>
> 	</remarks>
87a94
> using System;
91c98
< public static class NpgsqlUserManual
---
> public class NpgsqlConnDemo
94a102
> 	// Create a new connection object
95a104
> 	// Open the connection
96a106
> 	// Close it
231c241
< </Type>
\ No newline at end of file
---
> </Type>

--------------020900040806040402020705--