| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 994 人关注过本帖
标题:请教一个数据插入问题
只看楼主 加入收藏
honeybj08
Rank: 1
等 级:新手上路
帖 子:23
专家分:0
注 册:2010-5-16
结帖率:60%
收藏
 问题点数:0 回复次数:6 
请教一个数据插入问题
径赛项目中大家都知道比赛成绩(bscj,我定义的是Nvchar(10))都是以分和秒为单位的,比如说400米成绩为1'13",但是当我在将其插入数据库时却提示 { '13' 附近有语法错误。字符串 '','2','20069742  ')' 后的引号不完整。} 20069742是学号,
请问这是怎么回事啊???????????
搜索更多相关主题的帖子: 数据 
2010-05-26 10:03
sywzs
Rank: 10Rank: 10Rank: 10
来 自:辽宁
等 级:贵宾
威 望:15
帖 子:508
专家分:1725
注 册:2009-5-13
收藏
得分:0 
看不到有问题的语句,怎么知道错误在那里?
2010-05-26 14:34
honeybj08
Rank: 1
等 级:新手上路
帖 子:23
专家分:0
注 册:2010-5-16
收藏
得分:0 
语句没有错,当插入1.12时就没有问题,插入1'12"时就会有问题
2010-05-26 16:18
sywzs
Rank: 10Rank: 10Rank: 10
来 自:辽宁
等 级:贵宾
威 望:15
帖 子:508
专家分:1725
注 册:2009-5-13
收藏
得分:0 
你应该把这个语句写出来,便于分析。
既然你不愿意公布语句,我分析大概问题出在单引号“'”和双引号“"”号上。因为它们分别是注释符号和字符串的界定符号。
2010-05-27 09:16
honeybj08
Rank: 1
等 级:新手上路
帖 子:23
专家分:0
注 册:2010-5-16
收藏
得分:0 
回复 4楼 sywzs
Dim sqlstr As String
        Dim strConnect As String = "data source=FG-C99768EB468F\SQLEXPRESS;integrated security = sspi;initial catalog=高校田径运动会"
        Dim sqlConnectionl As SqlClient.SqlConnection
        sqlConnectionl = New System.Data.SqlClient.SqlConnection(strConnect)
        sqlConnectionl.Open()
        Dim cmd As New SqlClient.SqlCommand()
        cmd.Connection = sqlConnectionl
        If TextBox5.Text = "" Or TextBox6.Text = "" Then
            MessageBox.Show("比赛成绩和得分不能为空!", "错误提示")
        Else
             = CommandType.Text
             = "select bscj from jscjb where ydybh ='" + TextBox1.Text + "'"
            Dim mydatareader As SqlDataReader = cmd.ExecuteReader
            Do While (mydatareader.Read())
                TextBox5.Text = mydatareader.GetString(0)
            Loop
            If TextBox6.Text <> "" Then
                MsgBox("该运动员成绩已经存在" + Chr(10) + Chr(13) + "请确认输入的运动员编号", MsgBoxStyle.Critical + MsgBoxStyle.OkOnly, "错误提示")
                TextBox5.Text = ""
                TextBox6.Text = ""
            Else
                sqlstr = "insert into jscjb(ydybh,xymc,name ,xmmc,bscj,df,student_no) values( '" + TextBox1.Text + "','" + TextBox2.Text _
                     + "','" + TextBox3.Text + "','" + TextBox4.Text + "','" + TextBox5.Text + "','" + TextBox6.Text + "','" + TextBox7.Text + "')"
                = sqlstr
                cmd.ExecuteNonQuery()
                MessageBox.Show("插入成功!", "正确提示")
                TextBox1.Text = ""
                TextBox2.Text = ""
                TextBox3.Text = ""
                TextBox4.Text = ""
                TextBox5.Text = ""
                TextBox6.Text = ""
                TextBox7.Text = ""
            End If
        End If
        sqlConnectionl.Close()
    End Sub
2010-05-28 07:00
sywzs
Rank: 10Rank: 10Rank: 10
来 自:辽宁
等 级:贵宾
威 望:15
帖 子:508
专家分:1725
注 册:2009-5-13
收藏
得分:0 
问题就出在下面的命令中,由于成绩字符串中包含了单引号和双引号,使得字符串中的数据多出了单、双引号,因而命令无法继续运行。建议直接用汉字或其他字符表示,如:“13分2秒”,而不要用 “13'2"”。
2010-05-29 09:08
honeybj08
Rank: 1
等 级:新手上路
帖 子:23
专家分:0
注 册:2010-5-16
收藏
得分:0 
回复 6楼 sywzs
谢谢
2010-05-30 07:50
快速回复:请教一个数据插入问题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.026735 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved