C#如何存入数据至数据库

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C#如何存入数据至数据库相关的知识,希望对你有一定的参考价值。

数据库是:SQL SERVER 2005
想做个注册的界面,
希望点击注册按钮后,保存已经让用户填好的(UserName、PassPord)存入数据库中
数据库名为zhanghao
字段分别为:UserName和PassWord

谢谢各位大神,帮助我一下

1、ADO.NET采用不同的连接对象来存取数据库,每种特定的Connection对象都是需要导入不同的命名空间。C#存取SQL Server数据库的SqlConnection的命名空间为System.Data.SqlClient。

2、采用Sql Server身份验证的模式来创建连接。

3、通过SqlConnection创建连接后,C#还没有真正连接到Sql Server数据库;接下来,要打开连接:conn.Open();  //真正建立与数据库连接 。

4、建立数据连接后,向数据库发送SQL命令,则可使用SqlCommand对象 :SqlCommand cmd = new SqlCommand(sql, conn);。

5、对于C#向数据库发送SQL命令,并返回结果集的,则要使用SqlDataAdapter对象:SqlDataAdapter adp = new SqlDataAdapter(sql, conn);  //返回结果集 。

6、C#完成对SQL Server数据库的操作后,切记要关闭SqlConnection的数据连接: conn.Close();。

参考技术A 这个很简单
//定义数据库连接全局变量
const string connString = @"Data Source=THEMAN-PC; database=wpgl;User id=sa;Password=admins";
private void button4_Click(object sender, EventArgs e)

SqlConnection conn = new SqlConnection(connString);
conn.Open();
string mysql = "插入数据库操作就可以了 ";
SqlCommand cmd = new SqlCommand(mysql, conn);
cmd.ExecuteNonQuery();
conn.Close();
追问

就是把文本框里面的东东定义好了,如何传递进去啦?

追答

比如说你的用户名在textbox1中,密码在textbox2中,那么你就写
string mysql = "insert into 表名 values ('" + textBox1.Text.Trim() + "','" + textBox2.Text.Trim() + "')";前提是你的表里只有用户名和密码两个字段,如果还有可以先插入空值如:string mysql = "insert into 表名 values ('" + textBox1.Text.Trim() + "','" + textBox2.Text.Trim() + "','')";最后的空值表示你的表里的第三个字段!明白了,请完美一下!
如果要判断是否插入成功可以再conn.cloes();上面加上
sqldataread adr =cmd.excuteread();
if(adr.read())

messbox.show("插入成功!","提示信息");

else

messbox.show("插入失败!","提示信息");

本回答被提问者采纳
参考技术B 学习下ado.net 自然就明白了。追问

就是因为没有时间,所以才来请教大家

c# 中,一个长度为422234 的字符串,想存入oracle 数据库clob 字段,怎么存入? 麻烦具体方法

strSql = " insert into yhsjArrInfo(ID, YHM, JH, DTIME, BZ, ARR1, ARR2 ) values( YHSJARRID.NEXTVAL, 'kty','jh112',sysdate,'',"+":para "+ ", :para ) ";
StringBuilder data = new StringBuilder();
data.Append(str);//str 长度为422234
OracleCommand myCmd = new OracleCommand(strSql, orclcon);
myCmd.CommandType = CommandType.Text;
OracleParameter para = new OracleParameter("para", OracleType.Clob);
para.Value = data.ToString();
myCmd.Parameters.Add(para);
myCmd.ExecuteNonQuery();

error:

System.Data.OracleClient.OracleException: ORA-00600: 内部错误代码, 参数: [koklGetLocAndFlag: bndpos], [], [], [], [], [], [], [] 在 System.Data.OracleClient.OracleConnection.CheckError(OciErrorHandle errorHandle, Int32 rc) 在

我是学java的,但我想应该是一样的,
先转换成byte[]数组,再存入clob对象

insert 语句改为:
strSql = " insert into yhsjArrInfo(ID, YHM, JH, DTIME, BZ, ARR1, ARR2 ) values( YHSJARRID.NEXTVAL, 'kty','jh112',sysdate,'',empty_clob(),empty_clob()) ";
再去取这一条记录,where id = :id,取出这条记录后再更新它的empty_clob(),
Clob b = (Clob) rs.getClob("arr1"),
BufferedOutputStream.write(byte[])
类似这样的意思,以供参考
参考技术A 转成字节:
byte[] bytes= System.Text.Encoding.ASCII.GetBytes(data);
para.Value = bytes;

以上是关于C#如何存入数据至数据库的主要内容,如果未能解决你的问题,请参考以下文章

c#如何批量获取一个文件夹下的文件属性,然后存入数据库

求助c# winform中将图片存入数据库详细写法

c#里,通过串口收到的数据会转换为16进制字符串,想将数据存入数据库,应该怎么写?

用C#实现。 现在我有一个base64的照片数据,如何把它存入到我的sql数据库... 各位高手帮忙...

c#如何将object类型序列化为二进制存入SQLSERVER中,并从数据库中读出来并反序列化得到object对象

C#时间DateTime包含星期存入数据库错误