有多种方法,具体还有看你连接什么数据库,以及采用什么连接方式
我经常用的方法是用DAO连接Access
具体方法是
1、先添加DAO的引用
2、定义全局变量
public DAODatabase myDb;
DAOWorkspace myWs;
public DAORecordset myRec;
DAODBEngine de = new DAODBEngineClass();
3、自己定义一个打开数据库的函数,以便自己调用
public void OpenDb(String sql)
{
string dbStr;
dbStr = "c:\\钟山亮mdb";//数据库的路径
myWs = deWorkspaces[0];
myDb = myWsOpenDatabase(dbStr, null, null, null);
myRec = myDbOpenRecordset(sql, DAORecordsetTypeEnumdbOpenDynaset,
DAORecordsetOptionEnumdbDenyWrite,
DAOLockTypeEnumdbOptimistic);
}
4、打开数据库
string sql="select from myTb";//书写你自己的SQL语句
OpenDb(sql);
while (!myRecEOF)//遍历记录 {
myRecMoveNext();
}
myRecClose();
myDbClose();
伏=伏=毫伏=微伏。测量电压的仪表是:电压表,它
我之前的电脑时
40G硬盘,
125G的单核CPU(超频到166G),内存512
运行起来很流畅;
我安装了
VS2005,SQL
Server
2005(完全安装),MyEclipse,VC++
跑起来还很不错;
最厉害的时候,VS2005
开了3个,SQL
Server
2005
开了1个,再开一个
Dreamwaever
;
--不过现在的
VS2008
相当的吃内存,建议慎重对待VS2008!!
如果你的程序使用的库不是access或sqlite之类的桌面单机小库,而是MSSQL这种大型DBMS,那么正确的方式是,把建库建表填数据等等所有语句封装在安装程序中,安装过程调用这些语句完成库、表、对象的建立及必要初始数据的填充,如果对方没有符合要求的DBMS,则给予提示和退出安装。因为DBMS其实是属于客户的,客户负责自行采购、管理和维护(得养个DBA),而且该DBMS承载的应用未必只有你的程序,也许还有其它开发商为客户开发的程序。
当然了,实际上如果客户是从零开始部署SQL,他们也许希望你能一站式解决~甚至服务器都请你代买,但是理念上需要清楚,这些都是额外的事,不是软件提供商的你需要在程序中考虑的。就是说忙你可以帮,但不应该把这些忙帮进程序中去,不然你没交付一个软件都要带套DBMS~明显不妥是吧
PS:使用OleDbConnection类连接mdb文件,至于代码,恕我懒,请参看MSDN:>
vs连接mysql数据库的方法:
新建一个工程名叫mysql,编程环境选择c#,然后选择windows窗体应用程序,新建一个窗体用于显示查询到sql数据库的数据集
从工具箱向form1窗体上拖一个按钮和控件,按钮是触发连接数据库获取数据集,按钮的名称为显示,控件是用于显示数据集内容
单击解决方案资源管理器中的引用文件夹然后右键选择添加引用,选择浏览后打开mysqldatadll,这是c#连接mysql数据库的动态库,里面封装了很多常用的 *** 作数据库的方法
在解决方案资源管理器中的form1cs的代码中加入usingMySqlDataMySqlClient;这就是代码中的实际引用mysqldatadll中的内容,有了这个c#就能很方便地 *** 作sql数据库
在按钮的单击事件中添加如下代码
stringstr="Server=127001;UserID=root;Password=123456;Database=test;CharSet=gbk;";
con=new(str);//实例化链接
conOpen();//开启连接
stringstrcmd="selectfromuser";
cmd=new(strcmd,con);
ada=new(cmd);
DataSetds=newDataSet();
adaFill(ds);//查询结果填充数据集
DataSource=dsTables[0];
conClose();//关闭连接
使用navicat软件在数据库test中新建表user,然后新建两个字段username和password(图中的栏位),navicat软件是mysql的图形化界面工具,负责新建表以及备份等数据库 *** 作,直观地通过界面来 *** 作
数据库建好后就可以执行工程了,单击显示按钮执行结果如下,出现username和password说明数据库连接成功,由于没有添加数据所以下面为空
MFC的三种模式,决定的是界面模式,无论哪一种进行数据库连接都是一样的,没有任何区别。
决定使用哪一种关键看你需要怎样的界面,要对数据库进行哪些 *** 作。如果是纯粹的查询一个表和增加一条记录到数据库的功能,对话框最省事儿。
整删改查 都是sql语句 不分Winform和 Web
下面的是你需要的 我的表命叫 story
#region Method
/// <summary>
/// 增加一条数据
/// </summary>
public int Add(BWModelstory model)
{
StringBuilder strSql=new StringBuilder();
strSqlAppend("insert into story(");
strSqlAppend("title,contents,add_time)");
strSqlAppend(" values (");
strSqlAppend("@title,@contents,@add_time)");
strSqlAppend(";select @@IDENTITY");
SqlParameter[] parameters = {
new SqlParameter("@title", SqlDbTypeNVarChar,550),
new SqlParameter("@contents", SqlDbTypeNVarChar),
new SqlParameter("@add_time", SqlDbTypeDateTime)};
parameters[0]Value = modeltitle;
parameters[1]Value = modelcontents;
parameters[2]Value = modeladd_time;
object obj = DbHelperSQLGetSingle(strSqlToString(),parameters);
if (obj == null)
{
return 0;
}
else
{
return ConvertToInt32(obj);
}
}
/// <summary>
/// 更新一条数据
/// </summary>
public bool Update(BWModelstory model)
{
StringBuilder strSql=new StringBuilder();
strSqlAppend("update story set ");
strSqlAppend("title=@title,");
strSqlAppend("contents=@contents,");
strSqlAppend("add_time=@add_time");
strSqlAppend(" where id=@id");
SqlParameter[] parameters = {
new SqlParameter("@title", SqlDbTypeNVarChar,550),
new SqlParameter("@contents", SqlDbTypeNVarChar),
new SqlParameter("@add_time", SqlDbTypeDateTime),
new SqlParameter("@id", SqlDbTypeInt,4)};
parameters[0]Value = modeltitle;
parameters[1]Value = modelcontents;
parameters[2]Value = modeladd_time;
parameters[3]Value = modelid;
int rows=DbHelperSQLExecuteSql(strSqlToString(),parameters);
if (rows > 0)
{
return true;
}
else
{
return false;
}
}
/// <summary>
/// 删除一条数据
/// </summary>
public bool Delete(int id)
{
StringBuilder strSql=new StringBuilder();
strSqlAppend("delete from story ");
strSqlAppend(" where id=@id");
SqlParameter[] parameters = {
new SqlParameter("@id", SqlDbTypeInt,4)
};
parameters[0]Value = id;
int rows=DbHelperSQLExecuteSql(strSqlToString(),parameters);
if (rows > 0)
{
return true;
}
else
{
return false;
}
}
/// <summary>
/// 批量删除数据
/// </summary>
public bool DeleteList(string idlist )
{
StringBuilder strSql=new StringBuilder();
strSqlAppend("delete from story ");
strSqlAppend(" where id in ("+idlist + ") ");
int rows=DbHelperSQLExecuteSql(strSqlToString());
if (rows > 0)
{
return true;
}
else
{
return false;
}
}
/// <summary>
/// 得到一个对象实体
/// </summary>
public BWModelstory GetModel(int id)
{
StringBuilder strSql=new StringBuilder();
strSqlAppend("select top 1 id,title,contents,add_time from story ");
strSqlAppend(" where id=@id");
SqlParameter[] parameters = {
new SqlParameter("@id", SqlDbTypeInt,4)
};
parameters[0]Value = id;
BWModelstory model=new BWModelstory();
DataSet ds=DbHelperSQLQuery(strSqlToString(),parameters);
if(dsTables[0]RowsCount>0)
{
if(dsTables[0]Rows[0]["id"]!=null && dsTables[0]Rows[0]["id"]ToString()!="")
{
modelid=intParse(dsTables[0]Rows[0]["id"]ToString());
}
if(dsTables[0]Rows[0]["title"]!=null && dsTables[0]Rows[0]["title"]ToString()!="")
{
modeltitle=dsTables[0]Rows[0]["title"]ToString();
}
if(dsTables[0]Rows[0]["contents"]!=null && dsTables[0]Rows[0]["contents"]ToString()!="")
{
modelcontents=dsTables[0]Rows[0]["contents"]ToString();
}
if(dsTables[0]Rows[0]["add_time"]!=null && dsTables[0]Rows[0]["add_time"]ToString()!="")
{
modeladd_time=DateTimeParse(dsTables[0]Rows[0]["add_time"]ToString());
}
return model;
}
else
{
return null;
}
}
/// <summary>
/// 获得数据列表
/// </summary>
public DataSet GetList(string strWhere)
{
StringBuilder strSql=new StringBuilder();
strSqlAppend("select id,title,contents,add_time ");
strSqlAppend(" FROM story ");
if(strWhereTrim()!="")
{
strSqlAppend(" where "+strWhere);
}
return DbHelperSQLQuery(strSqlToString());
}
/// <summary>
/// 获得前几行数据
/// </summary>
public DataSet GetList(int Top,string strWhere,string filedOrder)
{
StringBuilder strSql=new StringBuilder();
strSqlAppend("select ");
if(Top>0)
{
strSqlAppend(" top "+TopToString());
}
strSqlAppend(" id,title,contents,add_time ");
strSqlAppend(" FROM story ");
if(strWhereTrim()!="")
{
strSqlAppend(" where "+strWhere);
}
strSqlAppend(" order by " + filedOrder);
return DbHelperSQLQuery(strSqlToString());
}
/// <summary>
/// 获取记录总数
/// </summary>
public int GetRecordCount(string strWhere)
{
StringBuilder strSql=new StringBuilder();
strSqlAppend("select count(1) FROM story ");
if(strWhereTrim()!="")
{
strSqlAppend(" where "+strWhere);
}
object obj = DbHelperSQLGetSingle(strSqlToString());
if (obj == null)
{
return 0;
}
else
{
return ConvertToInt32(obj);
}
}
/// <summary>
/// 分页获取数据列表
/// </summary>
public DataSet GetListByPage(string strWhere, string orderby, int startIndex, int endIndex)
{
StringBuilder strSql=new StringBuilder();
strSqlAppend("SELECT FROM ( ");
strSqlAppend(" SELECT ROW_NUMBER() OVER (");
if (!stringIsNullOrEmpty(orderbyTrim()))
{
strSqlAppend("order by T" + orderby );
}
else
{
strSqlAppend("order by Tid desc");
}
strSqlAppend(")AS Row, T from story T ");
if (!stringIsNullOrEmpty(strWhereTrim()))
{
strSqlAppend(" WHERE " + strWhere);
}
strSqlAppend(" ) TT");
strSqlAppendFormat(" WHERE TTRow between {0} and {1}", startIndex, endIndex);
return DbHelperSQLQuery(strSqlToString());
}
/
/// <summary>
/// 分页获取数据列表
/// </summary>
public DataSet GetList(int PageSize,int PageIndex,string strWhere)
{
SqlParameter[] parameters = {
new SqlParameter("@tblName", SqlDbTypeVarChar, 255),
new SqlParameter("@fldName", SqlDbTypeVarChar, 255),
new SqlParameter("@PageSize", SqlDbTypeInt),
new SqlParameter("@PageIndex", SqlDbTypeInt),
new SqlParameter("@IsReCount", SqlDbTypeBit),
new SqlParameter("@OrderType", SqlDbTypeBit),
new SqlParameter("@strWhere", SqlDbTypeVarChar,1000),
};
parameters[0]Value = "story";
parameters[1]Value = "id";
parameters[2]Value = PageSize;
parameters[3]Value = PageIndex;
parameters[4]Value = 0;
parameters[5]Value = 0;
parameters[6]Value = strWhere;
return DbHelperSQLRunProcedure("UP_GetRecordByPage",parameters,"ds");
}/
#endregion Method
以上就是关于VS建立的C#控制台应用程序如何和建立的SQL数据库连接全部的内容,包括:VS建立的C#控制台应用程序如何和建立的SQL数据库连接、C#语言编程软件(VS2005外加数据库应用)所需的最低电脑配置是、C#如何用VS将Sql数据库打包等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)