我做的一个连接数据库的测试程序
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.Data.OleDb;namespace SQLCon
{
public partial class add : Form
{
public add()
{
InitializeComponent();
} private void button2_Click(object sender, EventArgs e)
{
this.Close();
}
static string myConnectString = (@"provider=microsoft.jet.oledb.4.0;Data Source=5704A3EEA692443;Initial Catalog=cwgl;Integrated Security=True");
OleDbCommand com = new OleDbCommand();
OleDbConnection conn = new OleDbConnection(myConnectString);
private void button1_Click(object sender, EventArgs e)
{
string st1 = this.textBox1.Text.ToString().Trim();
string st2 = this.textBox2.Text.ToString().Trim();
string sle = "INSERT INTO jmb(num,xmm) values ('"+st1+"','"+st2+"')";
conn.Open();
com.Connection = conn;
com.CommandText = sle;
com.ExecuteNonQuery();
conn.Close();
}
}
}
提示出现的错误是 ”多步 OLE DB 操作产生错误。如果可能,请检查每个 OLE DB 状态“
我用的是SQL Server,里面的的jmb的num和xmm是ntext类型,我试过很多的类型 出现的都是这个错误 大家帮我看看
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.Data.OleDb;namespace SQLCon
{
public partial class add : Form
{
public add()
{
InitializeComponent();
} private void button2_Click(object sender, EventArgs e)
{
this.Close();
}
static string myConnectString = (@"provider=microsoft.jet.oledb.4.0;Data Source=5704A3EEA692443;Initial Catalog=cwgl;Integrated Security=True");
OleDbCommand com = new OleDbCommand();
OleDbConnection conn = new OleDbConnection(myConnectString);
private void button1_Click(object sender, EventArgs e)
{
string st1 = this.textBox1.Text.ToString().Trim();
string st2 = this.textBox2.Text.ToString().Trim();
string sle = "INSERT INTO jmb(num,xmm) values ('"+st1+"','"+st2+"')";
conn.Open();
com.Connection = conn;
com.CommandText = sle;
com.ExecuteNonQuery();
conn.Close();
}
}
}
提示出现的错误是 ”多步 OLE DB 操作产生错误。如果可能,请检查每个 OLE DB 状态“
我用的是SQL Server,里面的的jmb的num和xmm是ntext类型,我试过很多的类型 出现的都是这个错误 大家帮我看看
解决方案 »
- 我想实现两个webbrowser 同步显示,左面的webbrowser显示什么内容右面就什么内容,有什么好办法吗?
- listview添加contextMenu以后无法触发ColumnClick事件
- 如何实现模式窗体与非模式窗体的结合
- DotNetBar问题
- 把一个PictureBox的图片拖到另一个PictureBox里面显示
- 紧急求助 .net打包时将程序和SQL SERVER数据库一块进行打包
- DataSet的约束问题
- 安装了.net framework 2.0后找不到system.data.common
- c#下多线程的tcp粘包问题,请高手指点思路。
- 在.NET中连接上SYBASE12数据库但不能表进行操作,请高手赐教啊
- 一个关于static的问题
- Gridview 的问题
你测试一下光打开数据库会出错吗?
试试下面的连接字符:"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=|DataDirectory|\\数据库文件.mdb"再者,像我很少用上面的方法写连接数据库的,你上面的写法应该是存在问题的你看一下我的吧:OleDbConnection conn = new OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=|DataDirectory|\\数据库.mdb");
conn.open();
string st1 = this.textBox1.Text.ToString().Trim();
string st2 = this.textBox2.Text.ToString().Trim();
string sle = "INSERT INTO jmb(num,xmm) values ('"+st1+"','"+st2+"')";
OleDbCommand cmd = new OleDbCommand(sle, conn);
cmd.ExecuteNonQuery()
conn.Close();
conn.Dispose();
应该是这样的:
[oledb]
; Everything after this line is an OLE DB initstring
Provider=SQLOLEDB.1;Persist Security Info=False;User ID=sa;Initial Catalog=cwgl;Data Source=5704A3EEA692443
这是什么?你是连接Access数据库还是Excel等其它数据源
conn.open();
string st1 = this.textBox1.Text.ToString().Trim();
string st2 = this.textBox2.Text.ToString().Trim();
string sle = "INSERT INTO jmb(num,xmm) values ('"+st1+"','"+st2+"')";
SqlCommand cmd = new SqlCommand(sle, conn);
cmd.ExecuteNonQuery()
conn.Close();
conn.Dispose();改动的地方不多
而是using System.Data.SqlClient;
出现这样的错误,一般是因为INSERT 进去的数据长度超过了数据库字段的长度或者是数据类型不匹配导致,请 检查:
我试了下2楼说的方法 问题试解决了 后来出现个错误 “不能使用 '';文件已在使用中” 这个网上说的是数据库权限的问题
谁能告诉我怎么解决
我也是第一次使用。net 出现的问题还真不少
因为access不支持并发.. 一个用户打开了,另一个再使用就是这样了, 每个打字的连接,最好用了就关....