2005-06-05 Peter Bartok <pbartok@novell.com>
[mono.git] / mcs / class / Mono.Data.DB2Client / Test / TestDB2Conn / TestDB2Conn.cs
1 #region Licence\r
2         /// DB2DriverCS Test Code - A DB2 driver test for .Net\r
3         /// Copyright 2003 By Christopher Bockner\r
4         /// Released under the terms of the MIT/X11 Licence\r
5         /// Please refer to the Licence.txt file that should be distributed with this package\r
6         /// This software requires that DB2 client software be installed correctly on the machine\r
7         /// (or instance) on which the driver is running.  \r
8         /// \r
9 #endregion\r
10 \r
11 using System;\r
12 using System.Data;\r
13 using DB2ClientCS;\r
14 using System.Text;\r
15 \r
16 namespace TestDB2Conn {\r
17         /// <summary>\r
18         /// Code to test DB2DriverCS.\r
19         /// </summary>\r
20         class TestDB2Client \r
21         {\r
22                 static void DoTest(string database, string userid, string password) \r
23                 {\r
24                         IDbCommand command = null;\r
25                         string connectionString = String.Format(\r
26                                 "DSN={0};UID={1};PWD={2}",\r
27                                 database, userid, password);\r
28                         try {\r
29                                 Console.WriteLine("Create DB2 client Connection...");\r
30                                 DB2ClientConnection DB2Conn = new DB2ClientConnection();\r
31                                 \r
32                                 Console.WriteLine("connection string: " + connectionString);\r
33                                 \r
34                                 Console.WriteLine("Set connection string...");\r
35                                 DB2Conn.ConnectionString = connectionString;\r
36                                 \r
37                                 Console.WriteLine("Open a connection...");\r
38                                 DB2Conn.Open();\r
39                                 \r
40                                 string createTestTableSQL = \r
41                                         "CREATE TABLE mono_db2_test1 ( " +\r
42                                         "   testid varchar(2), " +\r
43                                         "   testdesc varchar(16) " +\r
44                                         ")";\r
45                                 Console.WriteLine("SQL:\n" + createTestTableSQL);\r
46                                 \r
47                                 Console.WriteLine("Create a command using sql and connection...");\r
48                                 command = new DB2ClientCommand(createTestTableSQL,DB2Conn);\r
49                                 Console.WriteLine("Execute Non Query...");\r
50                                 command.ExecuteNonQuery();\r
51 \r
52                                 string selectSQL = "select * from employee";\r
53                                 Console.WriteLine("SQL:\n" + selectSQL);\r
54                                 Console.WriteLine("create command and set connection and connection string...");\r
55                                 command = new DB2ClientCommand(selectSQL,DB2Conn);\r
56                                 Console.WriteLine("ExecuteReader...");\r
57                                 IDataReader dr = command.ExecuteReader();\r
58                                 Console.WriteLine("Read row...");\r
59                                 dr.Read();\r
60                                 Console.WriteLine("Read row...");\r
61                                 dr.Read();\r
62                                 Console.WriteLine("GetString...");\r
63                                 string dt = dr.GetString(1);\r
64                                 Console.WriteLine("dt: " + dt);\r
65                                 string s = dr.GetString(5);\r
66                                 Console.WriteLine("s: " + s);\r
67                                 DateTime t = dr.GetDateTime(6);\r
68                                 Console.WriteLine("t: " + t);\r
69                                 \r
70                                 Console.WriteLine("Close connection...");\r
71                                 DB2Conn.Close();\r
72                         }\r
73                         catch(DB2ClientException e) {\r
74                                 System.Console.Write(e.Message);\r
75                         }\r
76                 }\r
77                 /// <summary>\r
78                 /// The main entry point for the application.\r
79                 /// </summary>\r
80                 [STAThread]\r
81                 static void Main(string[] args) \r
82                 {\r
83                         if(args.Length != 3)\r
84                                 Console.WriteLine("Usage: mono TestDB2Conn.exe database userid password");\r
85                         else {\r
86                                 Console.WriteLine("Test Begin.");\r
87                                 // database, userid, password\r
88                                 DoTest(args[0], args[1], args[2]);\r
89                                 Console.WriteLine("Test End.");\r
90                         }                       \r
91                 }\r
92         }\r
93 }\r