将记录添加到sql db [英] adding record to sql db

查看:78
本文介绍了将记录添加到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屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆