将记录添加到sql db [英] adding record to sql db
问题描述
大家好...
即时尝试使用vb.net在ms sql server 2000上向sql db添加记录。
似乎正在工作..除了一件事,
数据库中的一列是一个数据类型,虽然我没有语法错误
编译,我得到一个错误表明数据将被截断。
字段是login_status。
我试过引号而不是,给它一个整数变量,数字为1
in它,真/假的陈述..香港专业教育学院尝试了一堆东西......让我真实的
难倒......
有什么想法?
谢谢
这是它吐出的错误。
上传原始数据时出现
< b> *错误< / b>。< br />字符串或二进制数据
将被截断。语句已被终止..Net SqlClient数据
提供者
---------------------------------------- ----------------------------------
这里是代码:
--------------------------------------------- -----------------------------
Imports System.Data
导入System.Data.SqlClient
公共类WebForm1
继承System.Web.UI.Page
Public Sub Register_User(ByV al sender as As Object,ByVal E As EventArgs)
Dim dbConnStr As String =" user id = **(空白为
安全性)*** ;密码= **(空白为
安全性)**; database = BCdb; server = localhost"
Dim dbConn As New System.Data.SqlClient .SqlConnection(dbConnStr)
尝试
Dim cmd As New SqlCommand(" addCustomerSQL",dbConn) )
cmd.CommandType = CommandType.StoredProcedure
cmd.Parameters.Add(New SqlParameter(" @ fullname",SqlDbType.VarChar,27))
cmd.Parameters.Add(New SqlParameter(" @ password",SqlDbType.Char,7))
cmd.Parameters.Add(New SqlParameter(" @ credit_card_nbr",SqlDbType) .Char,18))
cmd.Parameters.Add(New SqlParameter(" @ credit_card_expiry_date",
SqlDbType .DateTime))
cmd.Parameters.Add(New SqlParameter(" @ mailing_address",SqlDbType.VarChar,
100))
cmd.Parameters.Add(New SqlParameter(" @ phone_nbr",SqlDbType.Char,14))
cmd.Parameters.Add(New SqlParameter (@ email_address,SqlDbType.Char,50))
cmd.Parameters.Add(New SqlParameter(" @ login_status",SqlDbType.Bit))
cmd.Parameters.Add(New SqlParameter(" @ credit_card_name",SqlDbType.Char,
27))
cmd.Parameters.Item(" @ username")。Value = RegUsrnameTXT.Text
cmd.Parameters.Item(" @ fullname")。Value = RegFullnameTXT.Text
cmd.Parameters.Item(" @ password")。Value = RegPasswordTXT.Text
cmd.Parameters.Item(" @ credit_card_nbr" ;)。Value = RegCreditcardnumberTXT.Text
cmd.Parameters.Item(" @ credit_card_expiry_date")。Va lu e =
RegCreditcardexpiryTXT.Text
cmd.Parameters.Item(" @ mailing_address")。Value = RegAddressTXT.Text
>
cmd.Parameters.Item(" @ email_address")。Value = RegEmailTXT.Text
cmd.Parameters.Item(" @ phone_nbr")。Value = RegPhoneTXT.Text
cmd.Parameters.Item(" @ login_status")。Value = 1
cmd.Parameters.Item(" ; @ credit_card_name")。Value = RegCreditcardnameTXT.Text
''打开与数据库的连接
dbConn.Open()
''执行sql语句
cmd.ExecuteNonQuery()
dbConn.Close()
Catch objError As Exception
dberror.Text ="< b> *上传原始数据< / b>时出错。< br />" &
objError.Message& objError.Source
退出Sub
最后
如果dbConn.State = ConnectionState.Open然后
dbConn.Close()
结束如果
结束尝试
结束次级
结束班级
-------------- -------------------------------------------------- ------------
---
hello all...
im trying to add a record to an sql db on ms sql server 2000, using vb.net.
seems to be working.. except for one thing, one of the columns in the
database is a bit datatype, and though i get no syntax errors when
compiling, i get an error indicated that the data would be truncated. the
field is login_status.
ive tried in quotes and not, giving it an integer variable with the number 1
in it, true/false statements.. ive tried a bunch of stuff... has me real
stumped..
have any ideas?
thanks
here is the error it spits out.
<b>* error while uploading original data</b>.<br />String or binary data
would be truncated.The statement has been terminated..Net SqlClient Data
Provider
--------------------------------------------------------------------------
here is the code:
--------------------------------------------------------------------------
Imports System.Data
Imports System.Data.SqlClient
Public Class WebForm1
Inherits System.Web.UI.Page
Public Sub Register_User(ByVal sender As Object, ByVal E As EventArgs)
Dim dbConnStr As String = "user id=**(blanked for
security)***;password=**(blanked for
security)**;database=BCdb;server=localhost"
Dim dbConn As New System.Data.SqlClient.SqlConnection(dbConnStr)
Try
Dim cmd As New SqlCommand("addCustomerSQL", dbConn)
cmd.CommandType = CommandType.StoredProcedure
cmd.Parameters.Add(New SqlParameter("@username", SqlDbType.Char, 19))
cmd.Parameters.Add(New SqlParameter("@fullname", SqlDbType.VarChar, 27))
cmd.Parameters.Add(New SqlParameter("@password", SqlDbType.Char, 7))
cmd.Parameters.Add(New SqlParameter("@credit_card_nbr", SqlDbType.Char, 18))
cmd.Parameters.Add(New SqlParameter("@credit_card_expiry_date",
SqlDbType.DateTime))
cmd.Parameters.Add(New SqlParameter("@mailing_address", SqlDbType.VarChar,
100))
cmd.Parameters.Add(New SqlParameter("@phone_nbr", SqlDbType.Char, 14))
cmd.Parameters.Add(New SqlParameter("@email_address", SqlDbType.Char, 50))
cmd.Parameters.Add(New SqlParameter("@login_status", SqlDbType.Bit))
cmd.Parameters.Add(New SqlParameter("@credit_card_name", SqlDbType.Char,
27))
cmd.Parameters.Item("@username").Value = RegUsrnameTXT.Text
cmd.Parameters.Item("@fullname").Value = RegFullnameTXT.Text
cmd.Parameters.Item("@password").Value = RegPasswordTXT.Text
cmd.Parameters.Item("@credit_card_nbr").Value = RegCreditcardnumberTXT.Text
cmd.Parameters.Item("@credit_card_expiry_date").Va lue =
RegCreditcardexpiryTXT.Text
cmd.Parameters.Item("@mailing_address").Value = RegAddressTXT.Text
cmd.Parameters.Item("@email_address").Value = RegEmailTXT.Text
cmd.Parameters.Item("@phone_nbr").Value = RegPhoneTXT.Text
cmd.Parameters.Item("@login_status").Value = 1
cmd.Parameters.Item("@credit_card_name").Value = RegCreditcardnameTXT.Text
''opent the connection to the database
dbConn.Open()
''execute sql statement
cmd.ExecuteNonQuery()
dbConn.Close()
Catch objError As Exception
dberror.Text = "<b>* error while uploading original data</b>.<br />" &
objError.Message & objError.Source
Exit Sub
Finally
If dbConn.State = ConnectionState.Open Then
dbConn.Close()
End If
End Try
End Sub
End Class
----------------------------------------------------------------------------
---
推荐答案
你呢尝试只使用没有引号的整数1或0?
" Bryan" < CA ********** @ rogers.com>在消息中写道
news:5y ******************** @ news04.bloor.is.net.ca ble.rogers.com。 ..
did you try to just use the integer 1 or 0 with no quotes?
"Bryan" <ca**********@rogers.com> wrote in message
news:5y********************@news04.bloor.is.net.ca ble.rogers.com...
你好所有...
我试图在ms sql server 2000上使用
vb.net向sql db添加记录。 />似乎工作..除了一件事,
数据库中的一列是一个数据类型,虽然我在编译时没有语法错误,但我得到一个错误表明数据将被截断。
字段是login_status。
我试过引号而不是,给它一个整数变量,其中数字为
1,真/假陈述..我试过一堆有什么东西......让我真实地感到难过......
有什么想法?
谢谢
这里是它吐的错误上传。
< b> *上传原始数据< / b>时出错。< br />字符串或二进制数据将被截断。声明已被终止.. Net SqlClient数据
提供商
------------------------------ --------------------------------------------
这里是代码:
------------------------------------------- -------------------------------
Imports System.Data
进口系统。 Data.SqlClient
公共类WebForm1
继承System.Web.UI.Page
Public Sub Register_User(ByVal sender As Object,ByVal E As EventArgs)
Dim dbConnStr As String =" user id = **(为安全性而空白)***;密码= **(为安全性而空白)**; database = BCdb; server = localhost"
Dim dbConn As New System.Data.SqlClient.SqlConnection(dbConnStr)
尝试使用Dim cmd作为新的SqlCommand(addCustomerSQL, dbConn)
cmd.CommandType = CommandType.StoredProcedure
cmd.Parameters.Add(New SqlParameter(" @ username",SqlDbType.Char,19))
cmd.Parameters.Add(New SqlParameter(" @ fullname",SqlDbType.VarChar,27))
cmd.Parameters.Add(New SqlParameter(" @ password", SqlDbType.Char,7))
cmd.Parameters.Add(New SqlParameter(" @ credit_card_nbr",SqlDbType.Char,
18))
cmd.Parameters.Add (New SqlParameter(" @ credit_card_expiry_date",SqlDbType.DateTime))
cmd.Parameters.Add(New SqlParameter(" @ mailing_address",SqlDbType.VarChar,
100))
cmd.Parameters.Add(新的SqlPara meter(" @ phone_nbr",SqlDbType.Char,14))
cmd.Parameters.Add(New SqlParameter(" @ @ email_address",SqlDbType.Char,50))
cmd.Parameters.Add(New SqlParameter(" @ login_status",SqlDbType.Bit))
cmd.Parameters.Add(New SqlParameter(" @ credit_card_name",SqlDbType.Char,
27))
cmd.Parameters.Item(" @ username")。Value = RegUsrnameTXT.Text
cmd.Parameters.Item(" @ fullname")。Value = RegFullnameTXT.Text
cmd.Parameters.Item(" @ password")。Value = RegPasswordTXT.Text
cmd.Parameters.Item(" ; @ credit_card_nbr")。值=
RegCreditcardnumberTXT.Text
cmd.Parameters.Item(" @ credit_card_expiry_date")。Va lue =
RegCreditcardexpiryTXT.Text
cmd.Parameters.Item(" @ mailing_address")。Value = RegAddressTXT.Text
cmd.Parameters.Item(" @ email_address")。Value = RegEmailTXT.Text
cmd.Parame ters.Item(" @ phone_nbr")。Value = RegPhoneTXT.Text
cmd.Parameters.Item(" @ login_status")。Value = 1
cmd。 Parameters.Item(" @ credit_card_name")。Value = RegCreditcardnameTXT.Text
''打开与数据库的连接
dbConn.Open()
''执行sql语句
cmd.ExecuteNonQuery()
dbConn.Close()
将objError作为异常捕获
dberror.Text ="< b> *上传原始数据< / b>时出错。< br />" &
objError.Message& objError.Source
退出Sub
最后
如果dbConn.State = ConnectionState.Open那么
dbConn.Close ()
结束如果
结束尝试
结束子
结束课
-------------------------------------------------- ------------------------
- ---
hello all...
im trying to add a record to an sql db on ms sql server 2000, using vb.net.
seems to be working.. except for one thing, one of the columns in the
database is a bit datatype, and though i get no syntax errors when
compiling, i get an error indicated that the data would be truncated. the
field is login_status.
ive tried in quotes and not, giving it an integer variable with the number 1 in it, true/false statements.. ive tried a bunch of stuff... has me real
stumped..
have any ideas?
thanks
here is the error it spits out.
<b>* error while uploading original data</b>.<br />String or binary data
would be truncated.The statement has been terminated..Net SqlClient Data
Provider
--------------------------------------------------------------------------
here is the code:
--------------------------------------------------------------------------
Imports System.Data
Imports System.Data.SqlClient
Public Class WebForm1
Inherits System.Web.UI.Page
Public Sub Register_User(ByVal sender As Object, ByVal E As EventArgs)
Dim dbConnStr As String = "user id=**(blanked for
security)***;password=**(blanked for
security)**;database=BCdb;server=localhost"
Dim dbConn As New System.Data.SqlClient.SqlConnection(dbConnStr)
Try
Dim cmd As New SqlCommand("addCustomerSQL", dbConn)
cmd.CommandType = CommandType.StoredProcedure
cmd.Parameters.Add(New SqlParameter("@username", SqlDbType.Char, 19))
cmd.Parameters.Add(New SqlParameter("@fullname", SqlDbType.VarChar, 27))
cmd.Parameters.Add(New SqlParameter("@password", SqlDbType.Char, 7))
cmd.Parameters.Add(New SqlParameter("@credit_card_nbr", SqlDbType.Char, 18))
cmd.Parameters.Add(New SqlParameter("@credit_card_expiry_date",
SqlDbType.DateTime))
cmd.Parameters.Add(New SqlParameter("@mailing_address", SqlDbType.VarChar,
100))
cmd.Parameters.Add(New SqlParameter("@phone_nbr", SqlDbType.Char, 14))
cmd.Parameters.Add(New SqlParameter("@email_address", SqlDbType.Char, 50))
cmd.Parameters.Add(New SqlParameter("@login_status", SqlDbType.Bit))
cmd.Parameters.Add(New SqlParameter("@credit_card_name", SqlDbType.Char,
27))
cmd.Parameters.Item("@username").Value = RegUsrnameTXT.Text
cmd.Parameters.Item("@fullname").Value = RegFullnameTXT.Text
cmd.Parameters.Item("@password").Value = RegPasswordTXT.Text
cmd.Parameters.Item("@credit_card_nbr").Value = RegCreditcardnumberTXT.Text
cmd.Parameters.Item("@credit_card_expiry_date").Va lue =
RegCreditcardexpiryTXT.Text
cmd.Parameters.Item("@mailing_address").Value = RegAddressTXT.Text
cmd.Parameters.Item("@email_address").Value = RegEmailTXT.Text
cmd.Parameters.Item("@phone_nbr").Value = RegPhoneTXT.Text
cmd.Parameters.Item("@login_status").Value = 1
cmd.Parameters.Item("@credit_card_name").Value = RegCreditcardnameTXT.Text
''opent the connection to the database
dbConn.Open()
''execute sql statement
cmd.ExecuteNonQuery()
dbConn.Close()
Catch objError As Exception
dberror.Text = "<b>* error while uploading original data</b>.<br />" &
objError.Message & objError.Source
Exit Sub
Finally
If dbConn.State = ConnectionState.Open Then
dbConn.Close()
End If
End Try
End Sub
End Class
-------------------------------------------------------------------------- -- ---
你是否尝试使用没有引号的整数1或0?
" Bryan" < CA ********** @ rogers.com>在消息中写道
news:5y ******************** @ news04.bloor.is.net.ca ble.rogers.com。 ..
did you try to just use the integer 1 or 0 with no quotes?
"Bryan" <ca**********@rogers.com> wrote in message
news:5y********************@news04.bloor.is.net.ca ble.rogers.com...
你好所有...
我试图在ms sql server 2000上使用
vb.net向sql db添加记录。 />似乎工作..除了一件事,
数据库中的一列是一个数据类型,虽然我在编译时没有语法错误,但我得到一个错误表明数据将被截断。
字段是login_status。
我试过引号而不是,给它一个整数变量,其中数字为
1,真/假陈述..我试过一堆有什么东西......让我真实地感到难过......
有什么想法?
谢谢
这里是它吐的错误上传。
< b> *上传原始数据< / b>时出错。< br />字符串或二进制数据将被截断。声明已被终止.. Net SqlClient数据
提供商
------------------------------ --------------------------------------------
这里是代码:
------------------------------------------- -------------------------------
Imports System.Data
进口系统。 Data.SqlClient
公共类WebForm1
继承System.Web.UI.Page
Public Sub Register_User(ByVal sender As Object,ByVal E As EventArgs)
Dim dbConnStr As String =" user id = **(为安全性而空白)***;密码= **(为安全性而空白)**; database = BCdb; server = localhost"
Dim dbConn As New System.Data.SqlClient.SqlConnection(dbConnStr)
尝试使用Dim cmd作为新的SqlCommand(addCustomerSQL, dbConn)
cmd.CommandType = CommandType.StoredProcedure
cmd.Parameters.Add(New SqlParameter(" @ username",SqlDbType.Char,19))
cmd.Parameters.Add(New SqlParameter(" @ fullname",SqlDbType.VarChar,27))
cmd.Parameters.Add(New SqlParameter(" @ password", SqlDbType.Char,7))
cmd.Parameters.Add(New SqlParameter(" @ credit_card_nbr",SqlDbType.Char,
18))
cmd.Parameters.Add (New SqlParameter(" @ credit_card_expiry_date",SqlDbType.DateTime))
cmd.Parameters.Add(New SqlParameter(" @ mailing_address",SqlDbType.VarChar,
100))
cmd.Parameters.Add(新的SqlPara meter(" @ phone_nbr",SqlDbType.Char,14))
cmd.Parameters.Add(New SqlParameter(" @ @ email_address",SqlDbType.Char,50))
cmd.Parameters.Add(New SqlParameter(" @ login_status",SqlDbType.Bit))
cmd.Parameters.Add(New SqlParameter(" @ credit_card_name",SqlDbType.Char,
27))
cmd.Parameters.Item(" @ username")。Value = RegUsrnameTXT.Text
cmd.Parameters.Item(" @ fullname")。Value = RegFullnameTXT.Text
cmd.Parameters.Item(" @ password")。Value = RegPasswordTXT.Text
cmd.Parameters.Item(" ; @ credit_card_nbr")。值=
RegCreditcardnumberTXT.Text
cmd.Parameters.Item(" @ credit_card_expiry_date")。Va lue =
RegCreditcardexpiryTXT.Text
cmd.Parameters.Item(" @ mailing_address")。Value = RegAddressTXT.Text
cmd.Parameters.Item(" @ email_address")。Value = RegEmailTXT.Text
cmd.Parame ters.Item(" @ phone_nbr")。Value = RegPhoneTXT.Text
cmd.Parameters.Item(" @ login_status")。Value = 1
cmd。 Parameters.Item(" @ credit_card_name")。Value = RegCreditcardnameTXT.Text
''打开与数据库的连接
dbConn.Open()
''执行sql语句
cmd.ExecuteNonQuery()
dbConn.Close()
将objError作为异常捕获
dberror.Text ="< b> *上传原始数据< / b>时出错。< br />" &
objError.Message& objError.Source
退出Sub
最后
如果dbConn.State = ConnectionState.Open那么
dbConn.Close ()
结束如果
结束尝试
结束子
结束课
-------------------------------------------------- ------------------------
- ---
hello all...
im trying to add a record to an sql db on ms sql server 2000, using vb.net.
seems to be working.. except for one thing, one of the columns in the
database is a bit datatype, and though i get no syntax errors when
compiling, i get an error indicated that the data would be truncated. the
field is login_status.
ive tried in quotes and not, giving it an integer variable with the number 1 in it, true/false statements.. ive tried a bunch of stuff... has me real
stumped..
have any ideas?
thanks
here is the error it spits out.
<b>* error while uploading original data</b>.<br />String or binary data
would be truncated.The statement has been terminated..Net SqlClient Data
Provider
--------------------------------------------------------------------------
here is the code:
--------------------------------------------------------------------------
Imports System.Data
Imports System.Data.SqlClient
Public Class WebForm1
Inherits System.Web.UI.Page
Public Sub Register_User(ByVal sender As Object, ByVal E As EventArgs)
Dim dbConnStr As String = "user id=**(blanked for
security)***;password=**(blanked for
security)**;database=BCdb;server=localhost"
Dim dbConn As New System.Data.SqlClient.SqlConnection(dbConnStr)
Try
Dim cmd As New SqlCommand("addCustomerSQL", dbConn)
cmd.CommandType = CommandType.StoredProcedure
cmd.Parameters.Add(New SqlParameter("@username", SqlDbType.Char, 19))
cmd.Parameters.Add(New SqlParameter("@fullname", SqlDbType.VarChar, 27))
cmd.Parameters.Add(New SqlParameter("@password", SqlDbType.Char, 7))
cmd.Parameters.Add(New SqlParameter("@credit_card_nbr", SqlDbType.Char, 18))
cmd.Parameters.Add(New SqlParameter("@credit_card_expiry_date",
SqlDbType.DateTime))
cmd.Parameters.Add(New SqlParameter("@mailing_address", SqlDbType.VarChar,
100))
cmd.Parameters.Add(New SqlParameter("@phone_nbr", SqlDbType.Char, 14))
cmd.Parameters.Add(New SqlParameter("@email_address", SqlDbType.Char, 50))
cmd.Parameters.Add(New SqlParameter("@login_status", SqlDbType.Bit))
cmd.Parameters.Add(New SqlParameter("@credit_card_name", SqlDbType.Char,
27))
cmd.Parameters.Item("@username").Value = RegUsrnameTXT.Text
cmd.Parameters.Item("@fullname").Value = RegFullnameTXT.Text
cmd.Parameters.Item("@password").Value = RegPasswordTXT.Text
cmd.Parameters.Item("@credit_card_nbr").Value = RegCreditcardnumberTXT.Text
cmd.Parameters.Item("@credit_card_expiry_date").Va lue =
RegCreditcardexpiryTXT.Text
cmd.Parameters.Item("@mailing_address").Value = RegAddressTXT.Text
cmd.Parameters.Item("@email_address").Value = RegEmailTXT.Text
cmd.Parameters.Item("@phone_nbr").Value = RegPhoneTXT.Text
cmd.Parameters.Item("@login_status").Value = 1
cmd.Parameters.Item("@credit_card_name").Value = RegCreditcardnameTXT.Text
''opent the connection to the database
dbConn.Open()
''execute sql statement
cmd.ExecuteNonQuery()
dbConn.Close()
Catch objError As Exception
dberror.Text = "<b>* error while uploading original data</b>.<br />" &
objError.Message & objError.Source
Exit Sub
Finally
If dbConn.State = ConnectionState.Open Then
dbConn.Close()
End If
End Try
End Sub
End Class
-------------------------------------------------------------------------- -- ---
Bryan:
SqlServer中该字段的数据类型是什么?比特还是二进制? Param
类型被指定为Bit但是通过Exception消息,我想知道它是否是数据库中的二进制数。如果是这样,我相信将客户端中的数据库类型更改为SqlDbType.Binary或将数据类型服务器端更改为Bit可能会为您实现
。
HTH,
Bill
" Bryan" < CA ********** @ rogers.com>在消息中写道
news:5y ******************** @ news04.bloor.is.net.ca ble.rogers.com。 ..
Bryan:
What is the datatype of the field in SqlServer? Bit or Binary? The Param
type is specified as Bit but by the Exception message, I''m wondering if it''s
not Binary in the DB. If so, I believe changing the db type in the client
code to SqlDbType.Binary or changing the data type server side to Bit may do
it for you.
HTH,
Bill
"Bryan" <ca**********@rogers.com> wrote in message
news:5y********************@news04.bloor.is.net.ca ble.rogers.com...
你好所有...
我试图在ms sql server 2000上使用
vb.net向sql db添加记录。 />似乎工作..除了一件事,
数据库中的一列是一个数据类型,虽然我在编译时没有语法错误,但我得到一个错误表明数据将被截断。
字段是login_status。
我试过引号而不是,给它一个整数变量,其中数字为
1,真/假陈述..我试过一堆有什么东西......让我真实地感到难过......
有什么想法?
谢谢
这里是它吐的错误上传。
< b> *上传原始数据< / b>时出错。< br />字符串或二进制数据将被截断。声明已被终止.. Net SqlClient数据
提供商
------------------------------ --------------------------------------------
这里是代码:
------------------------------------------- -------------------------------
Imports System.Data
进口系统。 Data.SqlClient
公共类WebForm1
继承System.Web.UI.Page
Public Sub Register_User(ByVal sender As Object,ByVal E As EventArgs)
Dim dbConnStr As String =" user id = **(为安全性而空白)***;密码= **(为安全性而空白)**; database = BCdb; server = localhost"
Dim dbConn As New System.Data.SqlClient.SqlConnection(dbConnStr)
尝试使用Dim cmd作为新的SqlCommand(addCustomerSQL, dbConn)
cmd.CommandType = CommandType.StoredProcedure
cmd.Parameters.Add(New SqlParameter(" @ username",SqlDbType.Char,19))
cmd.Parameters.Add(New SqlParameter(" @ fullname",SqlDbType.VarChar,27))
cmd.Parameters.Add(New SqlParameter(" @ password", SqlDbType.Char,7))
cmd.Parameters.Add(New SqlParameter(" @ credit_card_nbr",SqlDbType.Char,
18))
cmd.Parameters.Add (New SqlParameter(" @ credit_card_expiry_date",SqlDbType.DateTime))
cmd.Parameters.Add(New SqlParameter(" @ mailing_address",SqlDbType.VarChar,
100))
cmd.Parameters.Add(新的SqlPara meter(" @ phone_nbr",SqlDbType.Char,14))
cmd.Parameters.Add(New SqlParameter(" @ @ email_address",SqlDbType.Char,50))
cmd.Parameters.Add(New SqlParameter(" @ login_status",SqlDbType.Bit))
cmd.Parameters.Add(New SqlParameter(" @ credit_card_name",SqlDbType.Char,
27))
cmd.Parameters.Item(" @ username")。Value = RegUsrnameTXT.Text
cmd.Parameters.Item(" @ fullname")。Value = RegFullnameTXT.Text
cmd.Parameters.Item(" @ password")。Value = RegPasswordTXT.Text
cmd.Parameters.Item(" ; @ credit_card_nbr")。值=
RegCreditcardnumberTXT.Text
cmd.Parameters.Item(" @ credit_card_expiry_date")。Va lue =
RegCreditcardexpiryTXT.Text
cmd.Parameters.Item(" @ mailing_address")。Value = RegAddressTXT.Text
cmd.Parameters.Item(" @ email_address")。Value = RegEmailTXT.Text
cmd.Parame ters.Item(" @ phone_nbr")。Value = RegPhoneTXT.Text
cmd.Parameters.Item(" @ login_status")。Value = 1
cmd。 Parameters.Item(" @ credit_card_name")。Value = RegCreditcardnameTXT.Text
''打开与数据库的连接
dbConn.Open()
''执行sql语句
cmd.ExecuteNonQuery()
dbConn.Close()
将objError作为异常捕获
dberror.Text ="< b> *上传原始数据< / b>时出错。< br />" &
objError.Message& objError.Source
退出Sub
最后
如果dbConn.State = ConnectionState.Open那么
dbConn.Close ()
结束如果
结束尝试
结束子
结束课
-------------------------------------------------- ------------------------
- ---
hello all...
im trying to add a record to an sql db on ms sql server 2000, using vb.net.
seems to be working.. except for one thing, one of the columns in the
database is a bit datatype, and though i get no syntax errors when
compiling, i get an error indicated that the data would be truncated. the
field is login_status.
ive tried in quotes and not, giving it an integer variable with the number 1 in it, true/false statements.. ive tried a bunch of stuff... has me real
stumped..
have any ideas?
thanks
here is the error it spits out.
<b>* error while uploading original data</b>.<br />String or binary data
would be truncated.The statement has been terminated..Net SqlClient Data
Provider
--------------------------------------------------------------------------
here is the code:
--------------------------------------------------------------------------
Imports System.Data
Imports System.Data.SqlClient
Public Class WebForm1
Inherits System.Web.UI.Page
Public Sub Register_User(ByVal sender As Object, ByVal E As EventArgs)
Dim dbConnStr As String = "user id=**(blanked for
security)***;password=**(blanked for
security)**;database=BCdb;server=localhost"
Dim dbConn As New System.Data.SqlClient.SqlConnection(dbConnStr)
Try
Dim cmd As New SqlCommand("addCustomerSQL", dbConn)
cmd.CommandType = CommandType.StoredProcedure
cmd.Parameters.Add(New SqlParameter("@username", SqlDbType.Char, 19))
cmd.Parameters.Add(New SqlParameter("@fullname", SqlDbType.VarChar, 27))
cmd.Parameters.Add(New SqlParameter("@password", SqlDbType.Char, 7))
cmd.Parameters.Add(New SqlParameter("@credit_card_nbr", SqlDbType.Char, 18))
cmd.Parameters.Add(New SqlParameter("@credit_card_expiry_date",
SqlDbType.DateTime))
cmd.Parameters.Add(New SqlParameter("@mailing_address", SqlDbType.VarChar,
100))
cmd.Parameters.Add(New SqlParameter("@phone_nbr", SqlDbType.Char, 14))
cmd.Parameters.Add(New SqlParameter("@email_address", SqlDbType.Char, 50))
cmd.Parameters.Add(New SqlParameter("@login_status", SqlDbType.Bit))
cmd.Parameters.Add(New SqlParameter("@credit_card_name", SqlDbType.Char,
27))
cmd.Parameters.Item("@username").Value = RegUsrnameTXT.Text
cmd.Parameters.Item("@fullname").Value = RegFullnameTXT.Text
cmd.Parameters.Item("@password").Value = RegPasswordTXT.Text
cmd.Parameters.Item("@credit_card_nbr").Value = RegCreditcardnumberTXT.Text
cmd.Parameters.Item("@credit_card_expiry_date").Va lue =
RegCreditcardexpiryTXT.Text
cmd.Parameters.Item("@mailing_address").Value = RegAddressTXT.Text
cmd.Parameters.Item("@email_address").Value = RegEmailTXT.Text
cmd.Parameters.Item("@phone_nbr").Value = RegPhoneTXT.Text
cmd.Parameters.Item("@login_status").Value = 1
cmd.Parameters.Item("@credit_card_name").Value = RegCreditcardnameTXT.Text
''opent the connection to the database
dbConn.Open()
''execute sql statement
cmd.ExecuteNonQuery()
dbConn.Close()
Catch objError As Exception
dberror.Text = "<b>* error while uploading original data</b>.<br />" &
objError.Message & objError.Source
Exit Sub
Finally
If dbConn.State = ConnectionState.Open Then
dbConn.Close()
End If
End Try
End Sub
End Class
-------------------------------------------------------------------------- -- ---
这篇关于将记录添加到sql db的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!