c#.net 链接sql 代码,插入 修改记录 代码 最简单即可 麻烦帮解释下,本人.net一点不懂

兄弟帮我分析下,c#.net 链接sql 代码,插入 修改记录 代码 最简单即可 麻烦帮解释下,本人.net一点不懂
最新回答
语楪ゝ淡蓝

2024-06-23 03:08:36

给你一个数据库操作类吧:新建一个类SQLHelper,把下面的代码复制进去就行了,然后你随便调用吧!至于sql语句都是通用的,里面的using System.Configuration;如果报错,就右键类库添加引用,在.net里面有System.Configuration,如果没有就自己到网上下一个System.Configuration.ddl加进去,connStr是调用的webconfig里面的连接字符串,在webconfig的<system.web></system.web>里面加一句
<connectionStrings>
<add name="连接名称,随便你写,用来在SQLHelper里面调用的" connectionString="server=(local);database=数据库名;User ID=用户名;Password=密码" providerName="System.Data.SqlClient"/>
</connectionStrings>
好了,这下够完整了,绝对没问题了,再小白都行了。。。。

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Data.SqlClient;
using System.Data;
using System.Configuration;

namespace DAL
{
public class SQLHelper
{
private SqlConnection conn = null;
private SqlCommand cmd = null;
private SqlDataReader sdr = null;

public SQLHelper()
{

string connStr = ConfigurationManager.ConnectionStrings["technologyConnectionString"].ConnectionString;
conn = new SqlConnection(connStr);
}

private SqlConnection GetConn()
{
if (conn.State == ConnectionState.Closed)
{
conn.Open();
}
return conn;
}

/// <summary>
/// 执行不带参数的增删改SQL语句或存储过程
/// </summary>
/// <param name="cmdText">增删改SQL语句或存储过程</param>
/// <param name="ct">命令类型</param>
/// <returns></returns>
public int ExecuteNonQuery(string cmdText, CommandType ct)
{
int res;
try
{
cmd = new SqlCommand(cmdText, GetConn());
cmd.CommandType = ct;
res = cmd.ExecuteNonQuery();
}
catch (Exception ex)
{
throw ex;
}
finally
{
if (conn.State == ConnectionState.Open)
{
conn.Close();
}
}
return res;
}

/// <summary>
/// 执行带参数的增删改SQL语句或存储过程
/// </summary>
/// <param name="cmdText">增删改SQL语句或存储过程</param>
/// <param name="ct">命令类型</param>
/// <returns></returns>
public int ExecuteNonQuery(string cmdText, SqlParameter[] paras, CommandType ct)
{
int res;
using (cmd = new SqlCommand(cmdText, GetConn()))
{
cmd.CommandType = ct;
cmd.Parameters.AddRange(paras);
res = cmd.ExecuteNonQuery();
}
return res;
}

/// <summary>
/// 执行不带参数的查询SQL语句或存储过程
/// </summary>
/// <param name="cmdText">查询SQL语句或存储过程</param>
/// <param name="ct">命令类型</param>
/// <returns></returns>
public DataTable ExecuteQuery(string cmdText, CommandType ct)
{
DataTable dt = new DataTable();
cmd = new SqlCommand(cmdText, GetConn());
cmd.CommandType = ct;
using (sdr = cmd.ExecuteReader(CommandBehavior.CloseConnection))
{
dt.Load(sdr);
}
return dt;
}

/// <summary>
/// 执行带参数的查询SQL语句或存储过程
/// </summary>
/// <param name="cmdText">查询SQL语句或存储过程</param>
/// <param name="paras">参数集合</param>
/// <param name="ct">命令类型</param>
/// <returns></returns>
public DataTable ExecuteQuery(string cmdText, SqlParameter[] paras, CommandType ct)
{
DataTable dt = new DataTable();
cmd = new SqlCommand(cmdText, GetConn());
cmd.CommandType = ct;
cmd.Parameters.AddRange(paras);
using (sdr = cmd.ExecuteReader(CommandBehavior.CloseConnection))
{
dt.Load(sdr);
}
return dt;
}
}
}
风铃鹿

2024-06-23 04:47:44

/// <summary>
/// 返回数据库连接的静态方法
/// </summary>
/// <returns>方法返回数据库连接对象</returns>
public static SqlConnection MyConnection()
{
return new SqlConnection(@"server=localhost;database=db_PMS;uid=sa;pwd=12345678");//数据库连接字符串
}
public int OperateData(string strSql)
{
conn.Open();//打开数据库连接
SqlCommand cmd = new SqlCommand(strSql, conn);//创建命令对象
int i = (int)cmd.ExecuteNonQuery();//执行SQL命令
conn.Close();//关闭数据库连接
return i;//返回数值
}
string sql =//创建SQL字符串
"update tb_department set DepName='" + txtDepName.Text.Trim() + "' where DepName='"+name+"'";
if (operate.OperateData(sql) > 0)
{
MessageBox.Show("部门修改成功", "提示",//弹出消息对话框
MessageBoxButtons.OK, MessageBoxIcon.Information);
this.Close();//关闭窗体
}

string str =//创建SQL字符串
"select count(*) from tb_User where UserName='"+txtOUser.Text.Trim()+"'";
int i = operate.HumanNum(str);//得到记录数量
if (i > 0)
{
MessageBox.Show("操作员存在!", "提示",//弹出消息对话框
MessageBoxButtons.OK, MessageBoxIcon.Information);
return;//退出事件
}
else
{
if (txtOUser.Text.Trim() == "" || txtOPwd.Text.Trim() == "")
{
MessageBox.Show("信息不完整!", "提示",//弹出消息对话框
MessageBoxButtons.OK, MessageBoxIcon.Information);
return;//退出事件
}
else
{
string InsertSql =//创建SQL字符串
"insert into tb_User(UserName,UserPwd,UserPower) values('" + txtOUser.Text.Trim() + "','" + txtOPwd.Text.Trim() + "','" + comboBox1.Text + "')";
operate.OperateData(InsertSql);//向数据库中插入数据
txtOPwd.Text = "";//清空文本内容
txtOUser.Text = "";//清空文本内容
MessageBox.Show("增加操作员成功!", "提示",//弹出消息对话框
MessageBoxButtons.OK, MessageBoxIcon.Information);
}
}
傲娇到底

2024-06-23 04:14:55

额。。。如果你用的是sqlserver 那么直接引用命名空间:using System.Data.SqlClient;
如果你是oracle 先添加引用--》using System.data.OracleClient;然后在代码添上using System.data.OracleClient;
然后呢就简单sql、语句问题了。你可以找着方面的,如果你要最简单的可以参考我的代码:
//增删查改
//string sql = "";
//SqlConnection cn=new SqlConnection("连接字符串");
//sql = "insert into table (字段1,字段2) values ('xx','aa')";//增
//sql = "delete from table where table_id ='" + ID + "'";//删
//sql = "select 字段1,字段2 from table where 条件";//查
//sql = "update table set 字段1='',字段2='' where table_id='" + ID + "' ";//改
//SqlDataAdapter da = new SqlDataAdapter(sql, cn);
//DataSet ds = new DataSet();
//da.Fill(ds);// 这样就执行了
最简单的例子了,适合菜鸟使用,另外这个是原创。。纯手打,望采纳哈哈。。不是盗贴的哦~! 当然你是用datagridview之类的绑定select检索出来的数据,你就在上面的代码后面datagridview.datasource=ds.table[0].DefaultView;