|
MY opinion is 4
I want to check whether particular value for a column exists before inserting , for that i want to ask which one is recommended ?
1) Set the unique constraint in table field, and in data access layer throw error catch it in presentation layer , and check whether error number is 2626 and display duplicate message.
OR I Use
2)In store procedure use EXISTS before inserting and if their is duplicate found then raise error.
Or I Use
3) I create another store procedure for checking whether value exists for a field, call this store procedure in my BLL Before inserting , if duplicate found then raise duplicate exception in presentation layer catch and display duplicate exception.
or i usemodified on Friday, February 19, 2010 3:16 AM
|
|
|
|
|
According to me its better to use 2 option becuase you can do all you task in one go i.e in one procedure and you dont have to call database two time.
|
|
|
|
|
|
I am not able to see 4th option Cheers!!
Brij
|
|
|
|
|
if you want to check for User name in registration form then i recommended you to 3 where other procedure will call by ajax when you enter user name.
If it is not for registration then use 2.
|
|
|
|
|
|
Where is 4 option? I am not able to see it.
|
|
|
|
|
I will suggest, Use the combination of 1st and 2nd.
|
|
|
|
|
How to make a sub-report which get data from SQL Server based on a primary key passed from the main-report.I know how to pass parameter to the report but I don't know to pass parameter from the main report to subreport and make link in the main report. After clicking the link the subreport shows its table.
|
|
|
|
|
error occured for me in online : File or assembly name CrystalKeyCodeLib, or one of its dependencies, was not found.
how to upload assembly name CrystalKeyCodeLib in online.
|
|
|
|
|
|
Hello All,
I am following the SearchableGrdview article posted on this site and am trying to implement it in ASP.net VB. To that end, I've taken the source file posted on the article and ran it through a C# to VB converter and pasted the resulting VB code in my application where applicable.
I have an entitydatasource that I'm trying to attach to the DataView in the article's code. Here' the pertinent snippet of the codebehind:
Private Sub BindData()
'hfSearchText has the search string returned from the grid
If hfSearchText.Value <> "" Then
EntityDataSource1.Select += " where " & hfSearchText.Value
End If
Dim dv As DataView = DirectCast(EntityDataSource1.[Select](New DataSourceSelectArguments()), DataView)
'hfSort has the sort string returned from the grid
If hfSort.Value <> "" Then
dv.Sort = hfSort.Value
End If
MySearch.DataSource = dv
Try
MySearch.DataBind()
Catch ex As Exception
'If databinding threw execept bc current
'page index is > than available page index
MySearch.PageIndex = 0
MySearch.DataBind()
Finally
'Select the first row returned
If MySearch.Rows.Count > 0 Then
MySearch.SelectedIndex = 0
End If
End Try
End Sub
I'm a relative newbie to data access and don't fully understand why a DataView is being implemented. Can someone enlighten me?
When I check my error listing, I see the following:
Value of type 'System.Web.UI.DataSourceSelectArguments' cannot be converted to 'Integer'.
How do I correct this? Is this issue being caused by the conversion from C# to VB? Or, is there something particular to the use of an entity datasource that must be done differently for the code in the article to work?
Thanks so much for your help an guidance!
|
|
|
|
|
using that code im able to insert the check box value
but if i check multiple check box im able to insert only one value to db how ineed to insert for multiple values..
and how do i retrieve that values from db i.e, the check boxes should be checked when i get the values from db..
please help me...
foreach (DataListItem dli in DataList1.Items)
{
CheckBox Chk = (CheckBox)dli.FindControl("CheckBox1");
if (Chk.Checked)
{
SqlConnection SqlCnn = new SqlConnection(ConfigurationManager.AppSettings["ConnectionString"]);
SqlCommand SqlCmd = new SqlCommand();
SqlCmd.Connection = SqlCnn;
SqlCnn.Open();
SqlCmd.CommandText = "insert into test(test1) values('"+ck.Text+"')";
SqlCmd.ExecuteNonQuery();
SqlCnn.Close();
break;
}
else
{
str13 = "you need to check";
}
}
LblErr.Visible = true;
LblErr.Text = str13;
|
|
|
|
|
Bigger picture here would help. What exactly do you want to do?
Do you wish to save the text for all the check boxes that have been checked? If yes then your code here is not doing it right.
Your code is static in nature
SqlCmd.CommandText = "insert into test(test1) values('"+ck.Text+"')";
SqlCmd.ExecuteNonQuery();
i.e. every time you get a positive, the query take the text value of the check box and saves it in the db against the same table column. So, what happens is the first positives text get over written by next which again get over written by the next and goes on until the last positive which gets saved ultimately.
If you wish to save all the texts to the db, then you have got to concatenate all the text values in one string, inside the foreach loop and use it in the query and execute it outside the loop.
HTH!
|
|
|
|
|
i want to save text for every check box that is checked
and how to i retrieve those values..
the checkboxs should be checked when i get values from db...
thank you..
Dinesh Mani wrote: you have got to concatenate
and how do i concatenate those text values
|
|
|
|
|
First things first, tell us how exactly are you creating your check boxes? I mean the what is the source for your checkbox's text?
|
|
|
|
|
source is a column from table 'test'
<asp:CheckBox ID="chkItem" runat="server" Text='<%# Eval("test1") %>' />
|
|
|
|
|
I don't want to see your code buddy. I want the business case.
|
|
|
|
|
im having around 30 checkboxes in page i used datalist to display.
when check boxs checked i need to insert their names into one column(seperated by comma or space)
then when i get those values from db check boxs need to be checked(edit mode)...
|
|
|
|
|
What is the condition that dictates that you need 30 check boxes? Do you create the checkboxes at runtime or are they available at design time itself? I suppose you create them at runtime. If so, from where do you get their names i.e. the text for each checkbox? Are these text values unique?
|
|
|
|
|
design time
Dinesh Mani wrote: If so, from where do you get their names i.e.
text of check box is a column from db using datalist.. all values are unique..
|
|
|
|
|
If you already have the text in the table, then why do you want to save it again the db? I understand that you need to save the state but why save the text?? What is the relevance of these checkboxes to the rest of the screen? i.e. is the state common across users or each user gets his/her own set of checkboxes? When you save the state to the DB what is the reference that you would be using to retrive it??
|
|
|
|
|
all users is having the same textboxes..
Dinesh Mani wrote: why do you want to save it again the db?
Im saving it to a different table so i used text to insert into new table..
Response.Write(ck.Text + "<br/>");
with this i can get multiple checked text values but how do i insert into db.
saving state or text whatever it may be i need to retrive them from db
but my sir wants text..
|
|
|
|
|
Ok I'm not getting why you need to do it this way so here you go.
pseudo -
Declare string CheckedBoxesText --- Use a stringbuilder
For each check box in datalist
if Checkbox is checked
Add concatenate checkbox text to CheckedBoxesText
else
do nothing
End of Foreach Loop
Query = "insert into test(test1) values('"CheckedBoxesText"')";
Execute query.
Implementing this pseudo would enable you to save the "text" of your check boxes to the db.
|
|
|
|
|
Remove the break; statement from the For each loop.
|
|
|
|