VS建立的C#控制台应用程序如何和建立的SQL数据库连接

VS建立的C#控制台应用程序如何和建立的SQL数据库连接,第1张

有多种方法,具体还有看你连接什么数据库,以及采用什么连接方式

我经常用的方法是用DAO连接Access

具体方法是

1、先添加DAO的引用

2、定义全局变量

public DAO.Database myDb

DAO.Workspace myWs

public DAO.Recordset myRec

DAO.DBEngine de = new DAO.DBEngineClass()

3、自己定义一个打开数据库的函数,以便自己调用

public void OpenDb(String sql)

{

string dbStr

dbStr = "c:\\钟山亮.mdb"//数据库的路径

myWs = de.Workspaces[0]

myDb = myWs.OpenDatabase(dbStr, null, null, null)

myRec = myDb.OpenRecordset(sql, DAO.RecordsetTypeEnum.dbOpenDynaset,

DAO.RecordsetOptionEnum.dbDenyWrite,

DAO.LockTypeEnum.dbOptimistic)

}

4、打开数据库

string sql="select * from myTb"//书写你自己的SQL语句

OpenDb(sql)

while (!myRec.EOF)//遍历记录 {

myRec.MoveNext()

}

myRec.Close()

myDb.Close()

伏=伏=毫伏=微伏。测量电压的仪表是:电压表,它

using System

using System.Data

using System.Configuration

using System.Linq

using System.Web

using System.Web.Security

using System.Web.UI

using System.Web.UI.HtmlControls

using System.Web.UI.WebControls

using System.Web.UI.WebControls.WebParts

using System.Xml.Linq

using System.Data.SqlClient

using System.Xml

/// <summary>

///SqlOperation 的摘要说明

/// </summary>

public class SqlOperation

{

string DataServerName

string DataDataBaseName

string DataUid

string DataPwd

string strerror

int intcount

public SqlOperation()

{

//

//TODO: 在此处添加构造函数逻辑

//

}

//连接数据库

private SqlConnection MySqlConn(string server,string database,string uid,string pwd)

{

try

{

return new SqlConnection("Server="+server+"Database="+database+"Uid="+uid+"Pwd="+pwd)

}

catch

{

return null

}

}

//执行查询select

public DataSet MySelect(string SqlLg)

{

GetDataInfo()

SqlConnection conn = MySqlConn(DataServerName, DataDataBaseName, DataUid, DataPwd)

try

{

conn.Open()

SqlCommand mycommand = new SqlCommand(SqlLg, conn)

mycommand.CommandType = CommandType.Text

SqlDataAdapter myadapter = new SqlDataAdapter()

myadapter.SelectCommand = mycommand

DataSet mydataset = new DataSet()

myadapter.Fill(mydataset)

return mydataset

}

catch(Exception e)

{

strerror = e.Message

return null

}

finally

{

if(conn.State!=ConnectionState.Closed)

{

conn.Close()

}

}

}

//更新、删除、插入通用函数

public bool UDI(string SqlLg)

{

GetDataInfo()

SqlConnection conn = MySqlConn(DataServerName, DataDataBaseName, DataUid, DataPwd)

try

{

conn.Open()

SqlCommand mycommand = new SqlCommand(SqlLg, conn)

mycommand.CommandType = CommandType.Text

intcount = mycommand.ExecuteNonQuery()

return !(intcount <1)

}

catch(Exception e)

{

strerror = e.Message

return false

}

finally

{

if(conn.State!=ConnectionState.Closed)

{

conn.Close()

}

}

}

//获取数据库连接信息

private void GetDataInfo()

{

XmlDocument xml = new XmlDocument()

xml.Load(System.Web.HttpContext.Current.Server.MapPath(@"App_Data\config.xml"))

XmlNodeList list = xml.SelectSingleNode("root").ChildNodes

DataServerName = list[0].InnerText

DataDataBaseName = list[1].InnerText

DataUid = list[2].InnerText

DataPwd = list[3].InnerText

}

}

给你一个我用JAVA写的一个数据库来连接类

可以对数据进行查询、更新、插入和删除等

package conn.sql.date

import java.sql.*

public class DataOperator

{

private final String DRIVER = "com.microsoft.sqlserver.jdbc.SQLServerDriver"// 连接sql数据库的方法:驱动

// private final String DRIVER="com.mysql.jdbc.Driver"//连接mysql数据库方法

//private final String DRIVER="sun.jdbc.odbc.JdbcOdbcDriver"//连接aacess,用jdbc-odbc桥方法,现在基本不用

private final String URL = "jdbc:sqlserver://localhost:1433DatabaseName=RegUser"//路径

//private final String URL="jdbc:mysql://localhost:3306/test"

//private final String URL="jdbc:odbc:mydata"

//private final String USERNAME = "sa"

private final String USERNAME="sa"//用户名

//private final String PASSWORD = "sa"

private final String PASSWORD="123"//密码

private Connection conn = null

public DataOperator()

{

try

{

Class.forName(DRIVER).newInstance()// 加载数据库驱动

} catch (Exception ex)

{

System.out.println("加载数据库驱动失败!")

System.out.println(ex.toString())

}

}

public boolean creatConnection()

{// 用来创建数据库连接

boolean isCreated = true// 默认创建成功

try

{

conn = DriverManager.getConnection(URL, USERNAME, PASSWORD)// 创建数据库连接

}

catch (SQLException e)

{

isCreated = false// 创建失败

}

return isCreated// 返回创建情况

}

public boolean executeUpdate(String sql)

{// 用来插入、修改和删除记录

boolean isUpdate = true// 默认执行成功

if (conn == null)

creatConnection()

try

{

Statement stmt = conn.createStatement()

stmt.executeUpdate(sql)

}

catch (SQLException e)

{

System.out.println(e.toString())

isUpdate = false// 执行失败

}

return isUpdate// 返回执行情况

}

public ResultSet executeQuery(String sql) {// 用来查询记录

ResultSet rs = null

if (conn == null)

creatConnection()

try

{

Statement stmt = conn.createStatement()

rs = stmt.executeQuery(sql)

}

catch (SQLException e) {

e.printStackTrace()

}

return rs// 返回查询结果集

}

public void closeConnection()

{// 用来关闭数据库连接

if (conn != null)

{

try

{

conn.close()

}

catch (SQLException e)

{

e.printStackTrace()

} finally {

conn = null

}

}

}

}


欢迎分享,转载请注明来源:内存溢出

原文地址: https://www.outofmemory.cn/sjk/9643219.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-30
下一篇 2023-04-30

发表评论

登录后才能评论

评论列表(0条)

保存