Recently wrote a common database access Class (C #)

Source: Internet
Author: User
Tags assert count dba insert
Access to | data | The database has recently written a common database access Class (C #); Supports OLEDB\SQL\ORACLE\ODBC data connections.
Provides SYSBASE,DB2 interface support,
If there are any mistakes, opinions, suggestions. Please contact me yu_nan88@126.com

Http://mail.gongyi.gov.cn/netdisk/download.php?user=zhaobin@gongyi.gov.cn&id= 2712a90f0de399014bfbea6e697381a3&filename=l7mk1/cvtxlqre8ucmfy&language=gb
After incomplete testing:
Test code:
Using System;
Using System.Collections;
Using System.IO;

Using Nunit.framework;
Using Mypdo.dataaccess;

Namespace Dataaccesstest
{
<summary>
Summary description of the CLASS1.
</summary>
[Testfixture]
public class Dataaccesstest
{
Public Dataaccesstest ()
{
//
TODO: Add constructor logic here
//
}
Private MyPDO.DataAccess.DataAccessor DBA;

[SetUp]
public void SetUp ()
{
DBA = new Dataaccessor ();
Dba. ConnectString = "Provider=sqloledb;data source=10.10.25.63;initial catalog=master;user Id=zha; password=123; ";
Dba. Connecttype = MyPDO.ConnectType.OleDbDataDriver;
Dba. Open ();
Assert.istrue (DBA. IsOpen, "DBA closed");
}
[Test]
public void Executenonquerytest ()
{
Hashtable hstable = new Hashtable ();
Hstable.add ("A", "SELECT * from Myfiles");
Dba.
Assert.istrue (DBA. IsOpen, "DBA closed");
if (DBA). IsOpen = = True)
{
Dba. ExecuteNonQuery (hstable);
}
}
[Test]
public void Getdatasettest ()
{
System.Data.DataSet ds = new System.Data.DataSet ();
Assert.istrue (DBA. IsOpen, "DBA closed");
if (DBA). IsOpen = = True)
{
Dba.commandtext = "SELECT * from Myfiles";
ds = DBA. GetDataSet ();
}
}
[Test]
public void Getdatatabletest ()
{
Assert.istrue (DBA. IsOpen, "DBA closed");
if (DBA). IsOpen = = True)
{
Dba.commandtext = "SELECT * from Myfiles";
System.Data.DataTable DTS = DBA. Getdatatable ();
}
}
[Test]
public void Getdatareadertest ()
{
Assert.istrue (DBA. IsOpen, "DBA closed");
if (DBA). IsOpen = = True)
{
Dba.commandtext = "SELECT * from Myfiles";
System.Data.IDataReader dtreader = DBA. Getdatareader ();
Dtreader.close ();
}
}
[Test]
public void Executecommandtest ()
{
Assert.istrue (DBA. IsOpen, "DBA closed");
if (DBA). IsOpen = = True)
{
Dba.commandtext = "SELECT * from Myfiles";
Dba. ExecuteCommand (FALSE);
}
}
[Test]
public void Setcommandparameterstest ()
{
System.Data.OleDb.OleDbParameter parms = new System.Data.OleDb.OleDbParameter ();
Parms. ParameterName = "@path";
Parms. OleDbType = System.Data.OleDb.OleDbType.VarChar;
Parms. Size = 255;
Parms. SourceColumn = "path";
Parms. Value = "222";

System.Data.OleDb.OleDbParameter parms1 = new System.Data.OleDb.OleDbParameter ();
Parms1. ParameterName = "@fname";
Parms1. OleDbType = System.Data.OleDb.OleDbType.VarChar;
Parms1. Size = 255;
Parms1. SourceColumn = "FName";
Parms1. Value = "1";

MyPDO.DataAccess.DataAccessor DBA = new Dataaccessor ();
Dba. ConnectString = "Provider=sqloledb;data source=10.10.25.63;initial catalog=master;user Id=zha; password=123; ";
Dba. Open ();
if (DBA). IsOpen = = True)
{
Dba.commandtext = "SELECT * from myfiles where path =?" and fname =? ";
Dba. Setcommandparameter (Parms,false);
Dba. Setcommandparameter (Parms1,false);
System.Data.DataSet ds = DBA. GetDataSet ();
Assert.AreEqual (1,ds. Tables[0]. Rows.Count);
Dba. Close ();
}
}
[Test]
public void Allusetest ()
{
This. Executecommandtest ();
This. Executenonquerytest ();
This. Getdatareadertest ();
This. Getdatareadertestwithparamblob ();
This. Getdatareadertestwithparamstring ();
This. Getdatasettest ();
This. Getdatatabletest ();
This. Setcommandparameterstest ();
}
[Test]
public void getdatareadertestwithparamstring ()
{
System.Data.OleDb.OleDbParameter parms = new System.Data.OleDb.OleDbParameter ();
Parms. ParameterName = "@path";
Parms. OleDbType = System.Data.OleDb.OleDbType.VarChar;
Parms. Size = 255;
Parms. SourceColumn = "path";
Parms. Value = "Eeee";

System.Data.OleDb.OleDbParameter parms1 = new System.Data.OleDb.OleDbParameter ();
Parms1. ParameterName = "@fname";
Parms1. OleDbType = System.Data.OleDb.OleDbType.VarChar;
Parms1. Size = 255;
Parms1. SourceColumn = "FName";
Parms1. Value = "1";

Assert.istrue (DBA. IsOpen, "DBA closed");
{
Dba.commandtext = "SELECT * from myfiles where path =?" and fname =? ";

Dba. Setcommandparameter (Parms,false);
Dba. Setcommandparameter (Parms1,false);

System.Data.IDataReader dtreader = DBA. Getdatareader ();
Dtreader.read ();
String strpath = dtreader.getstring (0);
Assert.AreEqual ("Eeee", strpath);
Dtreader.close ();
}
}
[Test]
public void Getdatareadertestwithparamblob ()
{
System.Data.OleDb.OleDbParameter parms = new System.Data.OleDb.OleDbParameter ();
Parms. ParameterName = "@path";
Parms. OleDbType = System.Data.OleDb.OleDbType.Numeric;
Parms. Size = 8;
Parms. SourceColumn = "C";
Parms. Value = 999;

System.Data.OleDb.OleDbParameter parms1 = new System.Data.OleDb.OleDbParameter ();
Parms1. ParameterName = "@fname";
Parms1. OleDbType = System.Data.OleDb.OleDbType.Binary;
Parms1. Size = 16;
Parms1. SourceColumn = "a";
Parms1. Value = Getphoto (@ "c:\a.jpg");
Parms1. Value = "111111111111111111111";

System.Data.OleDb.OleDbParameter parms2 = new System.Data.OleDb.OleDbParameter ()

Assert.istrue (DBA. IsOpen, "DBA closed");
{
Dba.commandtext = "INSERT INTO Test (C,A) VALUES (CONVERT (money,?),?)";

Dba.commandtext = "INSERT INTO Myfiles (path,fname) VALUES (?,?)";
Dba. Setcommandparameter (Parms,false);
Dba. Setcommandparameter (Parms1,false);

Dba. ExecuteCommand (TRUE);
}
}
public static byte[] Getphoto (string filePath)
{
FileStream fs = new FileStream (FilePath, FileMode.Open, FileAccess.Read);
BinaryReader br = new BinaryReader (FS);

byte[] Photo = Br. readbytes (int) fs. Length);

Br. Close ();
Fs. Close ();

return photo;
}
[Test]
public void Executestoredproceduretestonevalue ()
{

if (DBA). IsOpen = = True)
{
Dba.commandtext = "exec get_2 ' 222";
Object j = DBA. Executestoredprocedure (MyPDO.StoredProcedureType.OneValue);
string s = (string) j;
Assert.AreEqual ("222", s);
}
}
[Test]
public void Executestoredproceduretestnone ()
{
if (DBA). IsOpen = = True)
{
Dba.commandtext = "exec get_2 ' 222";
Object s = DBA. Executestoredprocedure (MyPDO.StoredProcedureType.None);
Assert.AreEqual (null,s);
}
Else
Assert.AreEqual (NULL, "1");
}
[Test]
public void Executestoredproceduretestdataset ()
{
if (DBA). IsOpen = = True)
{
Dba.commandtext = "exec get_2 ' ddddd '";
Object s = DBA. Executestoredprocedure (MyPDO.StoredProcedureType.DataSet);

System.Data.DataSet ds = (System.Data.DataSet) s;

if (ds. Tables.count > 0)
{
System.Data.DataTable dt = new System.Data.DataTable ();
DT = ds. Tables[0];
int str = dt. Rows.Count;
Assert.AreEqual (3,STR);
}
Else
Assert.AreEqual (NULL, "s");
}
Else
Assert.AreEqual (NULL, "1");
}
}
}




Author blog:http://blog.csdn.net/yu_nan88/


Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.