DataSource Controls :: How To Compare String Parameter With Db Field Of Type Ntext
May 12, 2010
I'm trying to compare a parameter of type String with a database field of type ntext. Below is my vb code. carDescription is a field in the database table that is of type ntext. The code didn't work because you can't use the equality operator.
Dim carDescriptionLookupCmdString As String = "SELECT carMake FROM car WHERE carDescription = @description"
Dim carDescriptionLookupCmd As New SqlCommand(carDescriptionLookupCmdString, dbConnection)
carDescriptionLookupCmd.Parameters.AddWithValue("@description", description)
Dim reader As SqlDataReader = carDescriptionLookupCmd.ExecuteReader()
I am trying to explode some data from an ntext field into a cvs for import, here is what i have so far,
DECLARE @XML as XML DECLARE @hDoc as INT SET @XML = (SELECT billaddress FROM order WHERE id=7 ) exec sp_xml_prepairedocument @hDoc OUTPUT, @XML SELECT firstname FROM OPENXML (@hDoc, '//') WITH (type text './type/@text', FirstName text './FirstName/@text') exec sp_xml_removedocument @hDoc OUTPUT
here is the errors:
Msg 2812, Level 16, State 62, Line 4
Could not find stored procedure 'sp_xml_prepairedocument'.
Msg 8179, Level 16, State 5, Line 6
Could not find prepared statement with handle 0.
Msg 6607, Level 16, State 3, Procedure sp_xml_removedocument, Line 1
sp_xml_removedocument: The value supplied for parameter number 1 is invalid.
I seem to be having issues with posting forms with DropDownLists. I've looked all over the net and tried various solutions, but none seem to work for me.
I'm getting the following error: The parameter conversion from type 'System.String' to type 'Models.Organization' failed because no type converter can convert between these types.
Here's my ViewModel:
[Code]....
Here's my controller:
[Code]....
The objects are generated by ADO.NET Entity Framework. Organizations is its own object, but also a property of Profile (each user belongs to one organization). Now I understand what the error message is saying, just not sure how else I'm supposed to do this.
I have this error "The given value of type String from the data source cannot be converted to type datetime of the specified target column." when I used sqlbulkcopy to do the transaction
I'm playing with an EntityDataSource and specifying a simple order by clause containing one column name, for instance "it.[DNS_NAME]".
When I run the following:
[Code]....
I get an EntitySqlException saying that @sort's type is incorrect. It is expecting a Transient.rowtype that matches one of the columns. What is going on here? Order by parameters don't really have a meaningful type other than a string in my opinion. When I try specifying DbType.String instead of TypeCode.String, the same error is thrown.
The exception:
'@sort' is not a member of type 'Transient.rowtype[(SOFTWARE_DSPL_ID,Edm.Int32(Nullable=True,DefaultValue=)),(COMPUTER_NAME,Edm.String(Nullable=True,DefaultValue=,MaxLength=64,Unicode=True,FixedLength=False)),(DNS_NAME,Edm.String(Nullable=True,DefaultValue=,MaxLength=64,Unicode=True,FixedLength=False)),(DIRECTORATE_NAME,Edm.String(Nullable=True,DefaultValue=,MaxLength=24,Unicode=True,FixedLength=False)),(OS_BROAD_CAT_NAM,Edm.String(Nullable=True,DefaultValue=,MaxLength=25,Unicode=True,FixedLength=False)),(OS,Edm.String(Nullable=True,DefaultValue=,MaxLength=64,Unicode=True,FixedLength=False)),(EQP_TYPE,Edm.String(Nullable=True,DefaultValue=,MaxLength=64,Unicode=True,FixedLength=False)),(EQP_PROP_NO,Edm.String(Nullable=True,DefaultValue=,MaxLength=10,Unicode=True,FixedLength=False))]' in the currently loaded schemas.
How can I dynamically provide the column name to order by?
As you can see, the connectionstring parameter is defined to a specific connection string name and I need to be able to set such a parameter to a different value, for example, to a session variable content.
I am trying to write a table output from SQL database to a gridview/ Data List through an Object Data Source. I am a new starter and your help will be useful.
public List<Staff> GetStaff() cmd.CommandType = SqlConnection con = new SqlConnection(connectionstring);SqlCommand cmd = new [code]...
I have an Output clause in a SQL statement and I use getutcdate() for a record. Does UTC record seconds? If so, how do I display it? What data type should I use for the UTC field?
Scenario: If you create a table with a column of type nvarchar, populate it with some content and try to modify it using the WebMatrix editor, from nvarchar to ntext, it does not display any error message or warning that this is not possible. It silently saves and reverts the change, back to nvarchar. Wasted some hours on this issue as I thought my column was ntext, but in fact was still nvarchar.
Expected behavior: It should change to ntext, or if SQL CE doesn't support that, it should notify the user that no change was applied.
and later using it as a parameter to the stored procedure.
The logic here is, the user should login first in order to retrieve his/her album. when the user is logged in, im retrieving the 'userid' and using it as parameter to load the corresponding album from the database.
when i login and open the albumpage, im end up with this exception:
"Failed to convert parameter value from a String to a Guid".
What could be the reason and how can i avoid this exception.
by the way im using the aspnet_Users table's userid field.
I have a bit of code in a clickevent handler like this:-
Dim products = From p In db.Products where p.product_name = "Tool" Select New With {p.Product_ID,p.Product_name} Gridview1.Datasource = products GridView1.Databind()
But causes error=SQL Server does not handle comparison of NText, Text, Xml, or Image data types?
How can I change the parameter value from Interger to String. Here below is the part of the code that creates problem; the constant "sqlStatement" is as string, but when the parameters "@ProdColor" read the value it returns an integer instead of the proper type which is a string. I have tried every ting like: CType(sqlStatement(splitItems(1)), string) Or convert or parse, but it keeps returning the wrong type.
Const sqlStatement As String = "INSERT INTO ProductDetails (ProdID,ProdColor,ProdSize) VALUES" If item.Contains(",") Then splitItems = item.Split(",".ToCharArray) cmd.Parameters.AddWithValue("@ProdID", SqlDBType.Int).Value = sqlStatement(splitItems(0)) cmd.Parameters.AddWithValue("@ProdColor", SqlDBType.NVarchar).Value = sqlStatement(splitItems(1)) cmd.Parameters.AddWithValue("@ProdSize", SqlDBType.NVarchar).Value = sqlStatement(splitItems(2))
I have the following problem: I need to store in MS SQL Server 2005 a vary large text in to one field of type nvarchar(MAX), In spite of the configuration is apparently correct I keep receiving the following message in the exception: "string or binary data would be truncated".
I read a CSV file into a DataTable.The DataTable in the first image shows each column and type.The types are exactly what they are supposed to be and the data loaded all the rows it was supposed to load.From the second screen shot you can see the database table. SqlBulkCopy is supposed to map column names to database columns by default.According to that logic each column matches up exactly to the database and the column types also match.However,when I run the command it errors on the first row with:
"The given value of type String from the data source cannot be converted to type decimal of the specified target column."
Here is the StackTrace:
"at System.Data.SqlClient.SqlBulkCopy.ConvertValue(Object value, _SqlMetaData metadata) at System.Data.SqlClient.SqlBulkCopy.WriteToServerInternal() at System.Data.SqlClient.SqlBulkCopy.WriteRowSourceToServer(Int32 columnCount) at
[code]...
Anyone have any ideas why this will not import correctly?
I am trying to update my table ARTICLES and it has a field COUNTER, Everytime a user enter this ARTICLES, the page_load event runs a LINQ to SQL query taking the QueryString as parameter, increasing the COUNTER field in 1.
In this case I use a datasource control for a datalist and the parameter list is being built ba the system. The DBType is created for the smalldatetime feild