数据库的插入,更新,删除操作

tbl820625 2002-11-14 05:38:44
请各位高手给我一个用 C# 操作数据库的插入,更新和删除操作的例子(需要完整代码),只要调试通过,并能实现上述所说功能,就给分
...全文
44 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
yangjiehua 2002-11-20
  • 打赏
  • 举报
回复
这里有一个例子,要连接SQLServer的northwind数据库,记住sqlserver服务器一定要开着。(这样的例子书上有好多)
using System;
using System.Data;
using System.Data.SqlClient;

namespace DataReaderExample
{

//******************************Enter Class****************************

class DataReaderExample
{
[STAThread]
static void Main(string[] args)
{
SqlConnection thisConnection = new SqlConnection(
@"Data Source = (local);Integrated Security = SSPI;" + "Initial Catalog = northwind");
thisConnection.Open();
SqlCommand thisCommand = thisConnection.CreateCommand();
thisCommand.CommandText =
"select customerid,companyname from customers";
SqlDataReader thisReader = thisCommand.ExecuteReader();
while (thisReader.Read())
{
Console.WriteLine("\t{0}\t{1}",
thisReader["customerid"],thisReader["companyname"]);
}
thisReader.Close();
thisConnection.Close();
Console.ReadLine();
}
}
}
whblxl 2002-11-16
  • 打赏
  • 举报
回复
mark
slayersun 2002-11-16
  • 打赏
  • 举报
回复
给你个我早期写的程序吧,表是一个基本的表,需要有主键sno


public static decimal[] chi(int i,decimal j)
{
decimal x;
decimal y;
string source ="Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=sbbyn;Data Source=SUNB\\sbnet";
SqlConnection conn=new SqlConnection(source);
SqlCommand cmd=new SqlCommand("StoredProcedure4",conn);
cmd.CommandType=CommandType.StoredProcedure;
SqlDataAdapter da=new SqlDataAdapter(cmd);
SqlCommandBuilder custcb=new SqlCommandBuilder(da);
conn.Open();
DataSet ds=new DataSet();
da.Fill(ds,"学生成绩表");
DataColumn[] keys=new DataColumn[1];

keys[0]=ds.Tables["学生成绩表"].Columns["学号"];
ds.Tables["学生成绩表"].PrimaryKey=keys;
DataRow foundrow=ds.Tables["学生成绩表"].Rows.Find(i);
x=Convert.ToDecimal(foundrow["总成绩"]);
y=Convert.ToDecimal(foundrow["语文"]);
x-=y;
foundrow["语文"]=j;
y=Convert.ToDecimal(foundrow["语文"]);
x+=y;
foundrow["总成绩"]=x;
foundrow["平均成绩"]=x/5;
decimal[] dec=new Decimal[2];
dec[0]=x;
dec[1]=x/5;
da.Update(ds,"学生成绩表");
ds.AcceptChanges();
return dec;

}
public static void delete(int i)
{
string source ="Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=sbbyn;Data Source=SUNB\\sbnet";
SqlConnection conn=new SqlConnection(source);
SqlCommand cmd=new SqlCommand("StoredProcedure4",conn);
cmd.CommandType=CommandType.StoredProcedure;
SqlDataAdapter da=new SqlDataAdapter(cmd);
SqlCommandBuilder custcb=new SqlCommandBuilder(da);
conn.Open();
DataSet ds=new DataSet();
da.Fill(ds,"学生成绩表");
DataColumn[] keys=new DataColumn[1];
keys[0]=ds.Tables["学生成绩表"].Columns["学号"];
ds.Tables["学生成绩表"].PrimaryKey=keys;
try
{
DataRow foundrow=ds.Tables["学生成绩表"].Rows.Find(i);
foundrow.Delete();
da.Update(ds,"学生成绩表");
ds.AcceptChanges();
}
catch(System.NullReferenceException)
{
MessageBox.Show("您要删除的学号不存在");

}




}
public static void insert(int i ,string j)
{
string source ="Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=sbbyn;Data Source=SUNB\\sbnet";
SqlConnection conn=new SqlConnection(source);
SqlCommand cmd=new SqlCommand("StoredProcedure4",conn);
cmd.CommandType=CommandType.StoredProcedure;
SqlDataAdapter da=new SqlDataAdapter(cmd);
SqlCommandBuilder custcb=new SqlCommandBuilder(da);
conn.Open();
DataSet ds=new DataSet();
da.Fill(ds,"学生成绩表");
DataColumn[] keys=new DataColumn[1];
keys[0]=ds.Tables["学生成绩表"].Columns["学号"];
ds.Tables["学生成绩表"].PrimaryKey=keys;
try
{
DataRow myrow=ds.Tables["学生成绩表"].NewRow();
myrow["学号"]=i;
myrow["姓名"]=j;
myrow["数学"]=0;
myrow["物理"]=0;
myrow["化学"]=0;
myrow["英语"]=0;
myrow["语文"]=0;
myrow["总成绩"]=0;
myrow["平均成绩"]=0;
ds.Tables["学生成绩表"].Rows.Add(myrow);
da.Update(ds,"学生成绩表");
ds.AcceptChanges();

}

附存储过程4

ALTER PROCEDURE StoredProcedure4
/*
(
@parameter1 datatype = default value,
@parameter2 datatype OUTPUT
)
*/


AS
/* SET NOCOUNT ON */
select * from 学生成绩表
slayersun 2002-11-15
  • 打赏
  • 举报
回复
这是根本不可能的,因为数据库都不同了
tbl820625 2002-11-15
  • 打赏
  • 举报
回复
那象一楼的那位大哥只给了一个例子,那位好心人再多给一个例子,让我多多参考啊
谢谢了
tbl820625 2002-11-15
  • 打赏
  • 举报
回复
我需要的是剪切下来直接能编译的代码
angel_lee 2002-11-15
  • 打赏
  • 举报
回复
Microsoft Framework SDK 中的quick start 有现成的例子和运行页面,你去看看,机器里有的
boatinriver 2002-11-15
  • 打赏
  • 举报
回复
你必须用数据适配器创建数据连接!
它会自动生成insertcommand deletecommand updatacommand
再在代码中加入Updata方法就可以了!~~!!
visualcpu 2002-11-14
  • 打赏
  • 举报
回复
private void button1_Click(object sender, System.EventArgs e)
{
sqlCmd=new SqlCommand("insert into stu values('9715255','asdfasd','男','8210138','asdfasd')",sqlCon);
try
{
sqlCmd.ExecuteNonQuery();
Console.WriteLine("Insert Succ!");
}
catch(Exception err)
{
Console.WriteLine(err.Message);
}

sqlCon.Close();
}

private void butConn_Click(object sender, System.EventArgs e)
{
strCon="uid=sa;pwd=888;database=test;server=134.242.7.155";
sqlCon=new SqlConnection(strCon);
try
{
sqlCon.Open();
Console.WriteLine("Connection Succ!");
}
catch(Exception err)
{
Console.WriteLine(err.Message);
}
}

private void butExit_Click(object sender, System.EventArgs e)
{
Application.Exit();
}

private void butEdit_Click(object sender, System.EventArgs e)
{
sqlDA=new SqlDataAdapter("select * from stu",sqlCon);
sqlDA.Fill(sqlDS,"stu");
sqlTable=sqlDS.Tables["stu"];
sqlRow=sqlTable.Rows[0];
sqlRow.BeginEdit();
sqlRow["number"]="1234567";
sqlRow.EndEdit();
SqlCommandBuilder sqlCB=new SqlCommandBuilder(sqlDA);
sqlDA.UpdateCommand=sqlCB.GetUpdateCommand();
sqlDA.Update(sqlDS,"stu");

}

110,533

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧