数据库插入insert into 问题

Posted

tags:

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

insert into order values
(NULL, 5, 69.98, '2000-2-4'),
(NULL, 3, 49.99, '2000-2-5'),
(NULL, 4, 74.98, '2000-2-6'),
(NULL, 5, 24.98, '2000-2-7');

该表的列的数据类型为int int float date

运行上面insert语句为什么报错?
#1064 - You have an error in your SQL syntax; check the manual that corresponds to your mysql server version for the right syntax to use near 'insert into order values
(NULL,5,69.98,'2000-2-4'),
(NULL,3,49.99,'2000-2-5'),' at line 6
第一个int类型为主键自增可以用NULL

你在建表的时候在sid这个字段上,你定义的类型是guid
在数据库中是没有这个数据类型的哦。你连表都建不起,你是怎么插入数据的。
还有一个问题,如果你把guid该成varchar()类型之后再执行你的插入语句一定会报一个异常消息

转换
varchar

'634294078577187500'
时溢出了整数列。超过了其中最大的整数值。
你定义的lastmodifiedticks数据类型是int类型,而你插入的数据已经大于了整数的位数。
解决方法就是把数据类型该成varchar()类型或char()类型。
参考技术A insert into order values 能一起插4条数据?
分开一条一条插试试
参考技术B NULL并不是Int类型啊,整形数字

你可以将NULL换成0,NULL是空置
参考技术C int 类型可以用NULL代替? 参考技术D 还是分开来写吧^_^
insert into order values (NULL, 5, 69.98, '2000-2-4')
insert into order values (NULL, 3, 49.99, '2000-2-5')
insert into order values (NULL, 4, 74.98, '2000-2-6')
insert into order values (NULL, 5, 24.98, '2000-2-7')

insert into 插入数据问题在线等

protected void Button1_Click(object sender, EventArgs e)


SqlConnection con = new SqlConnection("Data Source=.\\SQLEXPRESS;AttachDbFilename=|DataDirectory|\\Database.mdf;Integrated Security=True;User Instance=True");
con.Open();
SqlCommand com = new SqlCommand();
com.CommandText = "insert into yonghu(username,password,name,email,code,address,phone) values ('" + TextBox1.Text + "','" + TextBox2.Text + "','" + TextBox4.Text + "','" + TextBox5.Text + "','" + TextBox6.Text + "','" + TextBox7.Text + "','" + TextBox8.Text + "')";

con.Close();
Response.Redirect("注册成功.aspx");

目的是点击一个Butten后,把填写的信息写入yonghu数据库 这样能运行可是写入不到数据库,本人新手,如何做请高手指点。

呵呵,你定义了SQL ,却什么都没做,当然没结果了,就像问

string a="insert into table (a) values(1)";

为什么没有插入到数据库一样,你只是写了个string变量而已

insert into 插入数据问题在线等
悬赏分:20 - 离问题结束还有 14 天 21 小时
protected void Button1_Click(object sender, EventArgs e)


SqlConnection con = new SqlConnection("Data Source=.\\SQLEXPRESS;AttachDbFilename=|DataDirectory|\\Database.mdf;Integrated Security=True;User Instance=True");
con.Open();
SqlCommand com = new SqlCommand();
com.CommandText = "insert into yonghu(username,password,name,email,code,address,phone) values ('" + TextBox1.Text + "','" + TextBox2.Text + "','" + TextBox4.Text + "','" + TextBox5.Text + "','" + TextBox6.Text + "','" + TextBox7.Text + "','" + TextBox8.Text + "')";

cmd.execute();
con.Close();
参考技术A 直接写成SQL="insert into ..."

然后 conn.execute sql //执行.
执行要加判断,否则出错时就麻烦.
参考技术B 把User Instance = true去掉,这个设置了数据库为只读方式打开,所以你的数据插不进去 参考技术C 1楼写的程序还有个小问题,在进行数据库的连接时,没有将SqlConnection 初始化,在 SqlCommand com = new SqlCommand()后面再加一句:com.Connection = con;
还有,cmd.execute();应写成com.ExecuteNonQuery();

以上是关于数据库插入insert into 问题的主要内容,如果未能解决你的问题,请参考以下文章

数据库插入insert into 问题

向access数据库插入出现“insert into 语法错误”

MySQL中insert into语句的6种写法

Oracle中如何用一条insert into 语句插入多条数据 如: insert into 表 values(多条数据)????????

数据库 insert into 插入数据

使用insert into和insert overwrite插入数据的区别Hive or Odps