数据库为什么不能插入数据?????很急。。

qizhiping 2011-03-09 09:38:01
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}

private void button1_Click(object sender, EventArgs e)
{
string str = @"Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\shujuku.mdf;Integrated Security=True;User Instance=True";
SqlConnection mycon = new SqlConnection(str);
string name = txtname.Text;
string age = txtage.Text;
SqlCommand mycom = new SqlCommand("insert into Table1 (Yname,Yage) values ('name','age')", mycon);
mycon.Open();
mycom.ExecuteNonQuery();
mycon.Close();
label3.Text = "添加数据库成功!";
}
能够运行,没有提示错误,但在数据库中没有插入数据,????
...全文
614 42 打赏 收藏 转发到动态 举报
写回复
用AI写文章
42 条回复
切换为时间正序
请发表友善的回复…
发表回复
qizhiping 2011-03-11
  • 打赏
  • 举报
回复
基本解决,虽然不知道原因。谢谢各位大侠。。。。
qizhiping 2011-03-11
  • 打赏
  • 举报
回复
大哥, 如不是英文的话 他会提示的,,是英文的。

能插入,就是会把原来的数据覆盖。。????是什么原因??
Daqing 2011-03-11
  • 打赏
  • 举报
回复
('”+name+“','“+age+”')", 这个撇号改成英文的,ok!
qizhiping 2011-03-11
  • 打赏
  • 举报
回复
什么变量?
liana_z 2011-03-11
  • 打赏
  • 举报
回复
[Quote=引用 36 楼 qizhiping 的回复:]
我试了多次 都是把以前的覆盖了。。。???
[/Quote]
liana_z 2011-03-11
  • 打赏
  • 举报
回复
[Quote=引用 36 楼 qizhiping 的回复:]
我试了多次 都是把以前的覆盖了。。。???
[/Quote]
老大 的变量就没声明 也没起作用啊
qizhiping 2011-03-11
  • 打赏
  • 举报
回复
我试了多次 都是把以前的覆盖了。。。???
henllyjillion 2011-03-11
  • 打赏
  • 举报
回复
发现个问题,楼主的变量好像没起作用吧呵呵
liana_z 2011-03-11
  • 打赏
  • 举报
回复
[Quote=引用 31 楼 qizhiping 的回复:]
引用 28 楼 yalan 的回复:
单纯的插入式不会覆盖数据的,你看看数据库是否有触发器或者程序是否有其他操作?
比如,插入数据动作触发触发器自动删除以前的数据?



没有任何其他的 ,我在左一个系统出问题了,我就写了这个简单的试。。。。



29 楼 我把类型全改为 string 了的
[/Quote]
老大,你的name和age是变量啊
insert into Table1 (Yname,Yage) values (@name,@age)
mycom.Parameters.Add(new SqlParameter("@name",name
liana_z 2011-03-11
  • 打赏
  • 举报
回复
[Quote=引用 32 楼 liana_z 的回复:]
引用 31 楼 qizhiping 的回复:
引用 28 楼 yalan 的回复:
单纯的插入式不会覆盖数据的,你看看数据库是否有触发器或者程序是否有其他操作?
比如,插入数据动作触发触发器自动删除以前的数据?



没有任何其他的 ,我在左一个系统出问题了,我就写了这个简单的试。。。。



29 楼 我把类型全改为 string 了的

INSERT INTO [a]……
[/Quote]
你试一下,没有重大事故的话这样应该是对的
liana_z 2011-03-11
  • 打赏
  • 举报
回复
[Quote=引用 31 楼 qizhiping 的回复:]
引用 28 楼 yalan 的回复:
单纯的插入式不会覆盖数据的,你看看数据库是否有触发器或者程序是否有其他操作?
比如,插入数据动作触发触发器自动删除以前的数据?



没有任何其他的 ,我在左一个系统出问题了,我就写了这个简单的试。。。。



29 楼 我把类型全改为 string 了的
[/Quote]
INSERT INTO [a].[dbo].[Table1]
([name]
,[age])
VALUES
('dd'
,'aa')
qizhiping 2011-03-11
  • 打赏
  • 举报
回复
[Quote=引用 28 楼 yalan 的回复:]
单纯的插入式不会覆盖数据的,你看看数据库是否有触发器或者程序是否有其他操作?
比如,插入数据动作触发触发器自动删除以前的数据?
[/Quote]


没有任何其他的 ,我在左一个系统出问题了,我就写了这个简单的试。。。。



29 楼 我把类型全改为 string 了的
  • 打赏
  • 举报
回复
只要设置断点单步执行,就知道要唯一的一条代码有没有执行。怎么会弄出个try...catch...来判断数据库命令有没有执行这种方法来?挺奇怪的习惯。



[Quote=引用 27 楼 qizhiping 的回复:]

发现一个问题,数据库插入后,就全部吧以前的覆盖了?

这是为什么啊?
[/Quote]
能跟踪出数据库覆盖很好啊。

从这点判断,你中间刚刚接手,同时自己也不太熟悉数据库操作。如果以前有开发人员,请他们回来吧,然后问问他们为什么insert的结果会触发覆盖操作。如果以前没有开发人员,那么只能说数据库的人品不行了。
liana_z 2011-03-11
  • 打赏
  • 举报
回复
[Quote=引用 12 楼 qizhiping 的回复:]
谢谢 各位大侠!!!!
string str = @"Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\shujuku.mdf;Integrated Security=True;User Instance=True";
SqlConnection mycon = new SqlConnection(str);
stri……
[/Quote]
数据类型不对啊
INSERT INTO [a].[dbo].[Table1]
([name]
,[age])
VALUES
('123'
,12)
yalan 2011-03-11
  • 打赏
  • 举报
回复
单纯的插入式不会覆盖数据的,你看看数据库是否有触发器或者程序是否有其他操作?
比如,插入数据动作触发触发器自动删除以前的数据?
qizhiping 2011-03-11
  • 打赏
  • 举报
回复
发现一个问题,数据库插入后,就全部吧以前的覆盖了?

这是为什么啊?
qizhiping 2011-03-11
  • 打赏
  • 举报
回复
但不知道这是什么原因啊?????
qizhiping 2011-03-11
  • 打赏
  • 举报
回复
[Quote=引用 23 楼 dongxinxi 的回复:]
引用 17 楼 qizhiping 的回复:
#16楼 得分:0回复于:2011-03-10 10:24:43
把数据库里的数据调出来看一下(用语句)


谢谢,我试了,string str = @"Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\shujuku.mdf;Integrated Security=True;……
[/Quote]



在右边的服务器资源管理器中的数据库应该没更新。我在\shujuku\bin\Debug中把数据库重新附加上去 就显示出添加的数据了。


谢谢各位大侠!!!!!!!!!!!特别17、23楼
  • 打赏
  • 举报
回复
把数据库里的数据调出来看一下(用语句)
chenjunsheep 2011-03-10
  • 打赏
  • 举报
回复
[Quote=引用 14 楼 qizhiping 的回复:]

我数据库设置了一个自增的标示规范 标示增量 是1,但程序中没插入,是不是这个问题啊???三列 只插入2项,难道它不自动增加嘛?
[/Quote]
这个应该没有什么问题,肯定是自动累加的。
加载更多回复(22)

110,533

社区成员

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

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

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