Professional Documents
Culture Documents
C# Code Example
C# Code Example
Sample Tables
Many of the samples in this product brief use the emp and dept tables. You
can create the tables using an ISQL script, or by using the data provider.
UPDATED 9/24/2003
C #
C O D E
sal
comm
dept
begin
insert
insert
insert
insert
insert
insert
insert
insert
insert
insert
insert
insert
insert
insert
end
E X A M P L E S
F O R
C O N N E C T
F O R
. N E T
S Q L
S E R V E R
D A T A
P R O V I D E R
NUMERIC(7,2),
NUMERIC(7,2) NULL,
INT)
into
into
into
into
into
into
into
into
into
into
into
into
into
into
emp
emp
emp
emp
emp
emp
emp
emp
emp
emp
emp
emp
emp
emp
values
values
values
values
values
values
values
values
values
values
values
values
values
values
(1,'JOHNSON','ADMIN',6,'12-17-1990',18000,NULL,4)
(2,'HARDING','MANAGER',9,'02-02-1998',52000,300,3)
(3,'TAFT','SALES I',2,'01-02-1996',25000,500,3)
(4,'HOOVER','SALES I',2,'04-02-1990',27000,NULL,3)
(5,'LINCOLN','TECH',6,'06-23-1994',22500,1400,4)
(6,'GARFIELD','MANAGER',9,'05-01-1993',54000,NULL,4)
(7,'POLK','TECH',6,'09-22-1997',25000,NULL,4)
(8,'GRANT','ENGINEER',10,'03-30-1997',32000,NULL,2)
(9,'JACKSON','CEO',NULL,'01-01-1990',75000,NULL,4)
(10,'FILLMORE','MANAGER',9,'08-09-1994',56000,NULL,2)
(11,'ADAMS','ENGINEER',10,'03-15-1996',34000,NULL,2)
(12,'WASHINGTON','ADMIN',6,'04-16-1998',18000,NULL,4)
(13,'MONROE','ENGINEER',10,'12-03-2000',30000,NULL,2)
(14,'ROOSEVELT','CPA',9,'10-12-1995',35000,NULL,1)
into
into
into
into
D A T A D I R E C T
T E C H N O L O G I E S
2 OF 14
C #
C O D E
E X A M P L E S
F O R
C O N N E C T
F O R
. N E T
S Q L
S E R V E R
D A T A
P R O V I D E R
string CreateEmpTableSQL = "CREATE TABLE emp (empno INT PRIMARY KEY NOT NULL,"
+"ename
VARCHAR(10) NOT NULL,"
+"job
VARCHAR(9) NOT NULL,"
+"mgr
INT,"
+"hiredate DATETIME NOT NULL,"
+"sal
NUMERIC(7,2) NOT NULL,"
+"comm
NUMERIC(7,2),"
+"dept
INT NOT NULL)";
string CreateDeptTableSQL = "CREATE TABLE dept ("
+"deptno INT NOT NULL,"
+"dname VARCHAR(14),"
+"loc
VARCHAR(13))";
try
{
SQLServerCommand
DBCmd = new SQLServerCommand(CreateEmpTableSQL, Conn);
DBCmd.ExecuteNonQuery();
DBCmd.CommandText = CreateDeptTableSQL;
DBCmd.ExecuteNonQuery();
}
catch (Exception ex)
{
//Create tables failed
Console.WriteLine (ex.Message);
return;
}
// Now insert the records
string[] InsertEmpRecordsSQL =
"insert into emp values
"insert into emp values
"insert into emp values
"insert into emp values
"insert into emp values
"insert into emp values
"insert into emp values
"insert into emp values
"insert into emp values
"insert into emp values
"insert into emp values
"insert into emp values
"insert into emp values
"insert into emp values
{
(1,'JOHNSON','ADMIN',6,'12-17-1990',18000,NULL,4)",
(2,'HARDING','MANAGER',9,'02-02-1998',52000,300,3)",
(3,'TAFT','SALES I',2,'01-02-1996',25000,500,3)",
(4,'HOOVER','SALES I',2,'04-02-1990',27000,NULL,3)",
(5,'LINCOLN','TECH',6,'06-23-1994',22500,1400,4)",
(6,'GARFIELD','MANAGER',9,'05-01-1993',54000,NULL,4)",
(7,'POLK','TECH',6,'09-22-1997',25000,NULL,4)",
(8,'GRANT','ENGINEER',10,'03-30-1997',32000,NULL,2)",
(9,'JACKSON','CEO',NULL,'01-01-1990',75000,NULL,4)",
(10,'FILLMORE','MANAGER',9,'08-09-1994',56000, NULL,2)",
(11,'ADAMS','ENGINEER',10,'03-15-1996',34000, NULL,2)",
(12,'WASHINGTON','ADMIN',6,'04-16-1998',18000,NULL,4)",
(13,'MONROE','ENGINEER',10,'12-03-2000',30000,NULL,2)",
(14,'ROOSEVELT','CPA',9,'10-12-1995',35000,NULL,1)"};
string[] InsertDeptRecordsSQL = {
"insert into dept values (1,'ACCOUNTING','ST LOUIS')",
"insert into dept values (2,'RESEARCH','NEW YORK')",
"insert into dept values (3,'SALES','ATLANTA')",
"insert into dept values (4, 'OPERATIONS','SEATTLE')"};
// Insert dept table records first
for (int x = 0; x<InsertDeptRecordsSQL.Length; x++)
{
try
{
SQLServerCommand
DBCmd = new SQLServerCommand(InsertDeptRecordsSQL[x], Conn);
DBCmd.ExecuteNonQuery();
}
catch (Exception ex)
{
Console.WriteLine (ex.Message);
return;
}
}
D A T A D I R E C T
T E C H N O L O G I E S
3 OF 14
C #
C O D E
E X A M P L E S
F O R
C O N N E C T
F O R
. N E T
S Q L
S E R V E R
D A T A
P R O V I D E R
D A T A D I R E C T
T E C H N O L O G I E S
4 OF 14
C #
C O D E
E X A M P L E S
F O R
C O N N E C T
F O R
. N E T
S Q L
S E R V E R
D A T A
P R O V I D E R
}
myDataReader.Close();
// Close the connection
Conn.Close();
}
catch (Exception ex)
{
Console.WriteLine(ex.Message);
return;
}
SQLServerConnection
Conn;
Conn = new SQLServerConnection("host=nc-star;port=1433; User ID=test01;
Password=test01;Database Name=Test");
try
{
Conn.Open();
Console.WriteLine ("Connection successful!");
}
catch (Exception ex)
{
// Connection failed
Console.WriteLine(ex.Message);
return;
}
SQLServerCommand
DBCmd = new SQLServerCommand();
SQLServerTransaction DBTxn = null;
try
{
DBTxn = Conn.BeginTransaction();
// Set the Connection property of the Command object
DBCmd.Connection = Conn;
// Set the text of the Command to the INSERT statement
DBCmd.CommandText = "insert into emp VALUES
(16,'HAYES','ADMIN',6,'17-APR-2002',18000,NULL,4)";
// Set the transaction property of the Command object
DBCmd.Transaction = DBTxn;
// Execute the statement with ExecuteNonQuery, because we are not
// returning results
DBCmd.ExecuteNonQuery();
// Now commit the transaction
DBTxn.Commit();
// Display any exceptions
Console.WriteLine ("Transaction Committed!");
}
catch (Exception ex)
{
// Display any exceptions
Console.WriteLine (ex.Message);
// If anything failed after the connection was opened, roll back the
D A T A D I R E C T
T E C H N O L O G I E S
5 OF 14
C #
C O D E
E X A M P L E S
F O R
C O N N E C T
F O R
. N E T
S Q L
S E R V E R
D A T A
P R O V I D E R
// transaction
if (DBTxn != null)
{
DBTxn.Rollback();
}
}
// Close the connection
Conn.Close();
System;
System.EnterpriseServices;
System.Reflection;
DDTek.SQLServer;
[assembly: ApplicationName("yourapplicationname")]
[assembly: AssemblyKeyFileAttribute(@"..\..\yourapplicationname.snk")]
namespace DistTransaction
{
/// <summary>
/// Summary description for Class1.
/// </summary>
public class Class1
{
/// <summary>
/// The main entry point for the application.
/// </summary>
[STAThread]
static void Main(string[] args)
{
SQLServerConnection Conn1;
Conn1 = new SQLServerConnection("host=nc-star;port=1433;
User ID=test01;Password=test01;
Database Name=Test;Enlist=true");
SQLServerConnection Conn2;
Conn2 = new SQLServerConnection("host=nc-star;port=1433;
User ID=test07;Password= test07;
Database Name=test;Enlist=true");
try
{
D A T A D I R E C T
T E C H N O L O G I E S
6 OF 14
C #
C O D E
E X A M P L E S
F O R
C O N N E C T
F O R
. N E T
S Q L
S E R V E R
D A T A
P R O V I D E R
D A T A D I R E C T
T E C H N O L O G I E S
7 OF 14
C #
C O D E
E X A M P L E S
F O R
C O N N E C T
F O R
. N E T
S Q L
S E R V E R
D A T A
P R O V I D E R
D A T A D I R E C T
T E C H N O L O G I E S
8 OF 14
C #
C O D E
E X A M P L E S
F O R
C O N N E C T
F O R
. N E T
S Q L
S E R V E R
D A T A
P R O V I D E R
D A T A D I R E C T
T E C H N O L O G I E S
9 OF 14
C #
C O D E
E X A M P L E S
F O R
C O N N E C T
F O R
. N E T
S Q L
S E R V E R
D A T A
P R O V I D E R
D A T A D I R E C T
T E C H N O L O G I E S
10 OF 14
C #
C O D E
E X A M P L E S
F O R
C O N N E C T
F O R
. N E T
S Q L
S E R V E R
D A T A
P R O V I D E R
myDataReader;
try
{
myDataReader = DBCmd.ExecuteReader();
myDataReader.Close();
}
catch (Exception ex)
{
// Display any exceptions
Console.WriteLine (ex.Message);
}
Console.WriteLine("Procedure Executed Successfully!");
// Close the connection
Conn.Close();
D A T A D I R E C T
T E C H N O L O G I E S
11 OF 14
C #
C O D E
E X A M P L E S
F O R
C O N N E C T
F O R
. N E T
S Q L
S E R V E R
D A T A
P R O V I D E R
try
{
int count = (int)salCmd.ExecuteScalar();
Console.WriteLine("Count of Salaries >$50,000 : "
+ Convert.ToString(count));
}
catch (Exception ex)
{
// Display any exceptions
Console.WriteLine(ex.Message);
}
// Close the connection
Conn.Close();
D A T A D I R E C T
T E C H N O L O G I E S
12 OF 14
C #
C O D E
E X A M P L E S
F O R
C O N N E C T
F O R
. N E T
S Q L
S E R V E R
D A T A
P R O V I D E R
Summary
DataDirect Technologies is committed to providing the fastest and most
functional ADO.NET managed data providers so that you can develop a
robust .NET solution with unrivaled performance.
These code examples, which provide working C# code for typical data access
tasks, can help you to get started quickly and optimize your development
when you use the Connect for .NET SQL Server data provider with your
ADO.NET application.
D A T A D I R E C T
T E C H N O L O G I E S
13 OF 14
C #
C O D E
E X A M P L E S
F O R
C O N N E C T
F O R
. N E T
S Q L
S E R V E R
D A T A
P R O V I D E R
800-876-3101
info@datadirect.com
datadirect.com
Worldwide Sales
Belgium (French) .............0800 12 045
Belgium (Dutch) ...............0800 12 046
France ............................0800 911 454
Germany ....................0800 181 78 76
Japan .............................0120.20.9613
Netherlands .................0800 022 0524
United Kingdom .........0800 169 19 07
United States .................800 876 3101
D A T A D I R E C T
T E C H N O L O G I E S
14 OF 14