lzyah 发表于 2008-9-6 00:51

C#编程联接sql server 出现问题,请帮忙解决!

我用c# 在Form里添加了若干个textBox 和 button,在textBox 里输入文字,之后点击 button ,用SQL的 insert 语句插入进sql 2000 数据库中,但是发现无法插入,用sql事件查看器,返回的信息是
Audit Login  --network protocol:LPC qutoentifier on set implicit_transactions off set cursor_close_on_commit off set ansi_warings

-- network protocol: LPC
set quoted_identifier on
set implicit_transactions off
set cursor_close_on_commit off
set ansi_warnings on
set ansi_padding on
set ansi_nulls on
set concat_null_yields_null on
set language 简体中文
set dateformat ymd
set datefirst 7

数据库我是手工建的    设成 Chinese_PRC_BIN
那个数据表 也是Chinese_PRC_BIN


窗体链接sql server ,insert 操作的代码是


SqlConnection conn = new SqlConnection("User id = sa;password=;" + "initial catalog = databasename;" + "data source = hostname;" + "connect Timeout=30");

conn.Open();

string sqlcmd = "INSERT into table1 (tab1,tab2,tab3) values '"+textBox1.Text+"' , '"+textBox2.Text+"' , '"+textBox3.Text+"' )";
               
SqlCommand mysql = new SqlCommand(sqlcmd,conn);

请是何原因,如何解决?

谢谢!!

xyq701830 发表于 2008-9-6 11:11

先在查询分析器里面去试下能不能插入.

szy345 发表于 2008-9-6 11:25

最后是不是少了指定命令的类型语句
mysql.CommandType = CommandType.Text

xyq701830 发表于 2008-9-6 14:14

SqlCommand mysql = new SqlCommand(sqlcmd,conn);
不是在么.他已经包含了mysql.CommandType = CommandType.Text

乖老鼠 发表于 2008-9-8 13:53

设置断点,把你的SqlConnection的Text复制到查询分析器里面执行,看哪里语法错了,对应的修改C#代码。我觉得这样比较好

szy345 发表于 2008-9-10 13:20

[quote][bo][un]xyq701830[/un] 在 2008/9/6 14:14 的发言:[/bo]

SqlCommand mysql = new SqlCommand(sqlcmd,conn);
不是在么.他已经包含了mysql.CommandType = CommandType.Text [/quote]

这个包含吗?
好象是2码事吧
1个是创建SQL语句的对象,
下面是指定类型!
我是这样认为的!

师妃暄 发表于 2008-9-10 15:00

conn.close()

lzyah 发表于 2008-9-12 11:39

问题已经解决
在 SqlCommand 语句之后,再加一句
SqlDataReader mysql11 = mysql.ExecuteReader();

页: [1]

编程论坛