Closed. This question needs details or clarity. It is not currently accepting answers.
Want to improve this question? Add details and clarify the problem by editing this post.
Closed 9 years ago.
Improve this question
Is there a way to do a c# datarow like the below code in a SELECT * query
//Have results like blow
string username = (string)row["username"];
I've tried but all I seem to see is reader or something, witch I know nothing about and don't understand. Can you lead me to some code that will help or give me a example?
DataReader is actually exactly what you need. The 'DataRow' class by itself won't help you; that gets used as part of a more complex solution, the 'DataSet' class (which uses 'DataTable' and that in turn uses 'DataColumn' and 'DataRow'). I don't see many people using 'DataSet'; if you want something complex with drag-and-drop design, you should look at using Entity Framework.
Here is a standard way to read values from SQL in .NET via DataReader (which, no matter what anyone says, is the fastest way to simply read data from a SQL database in .NET):
using (var connection = new SqlConnection("<Your connection string here>")
{
var command = new SqlCommand(
"SELECT username, email FROM users;",
connection);
connection.Open();
var reader = command.ExecuteReader(); // Using the DataReader (specifically, the SqlDataReader)
if (reader.HasRows)
{
while (reader.Read())
{
Console.WriteLine("User {0} has email {1}", reader["username"],
reader["email"]);
}
}
else
{
Console.WriteLine("No rows found.");
}
reader.Close();
}
MSDN documentation for DataReader
Related
Closed. This question needs to be more focused. It is not currently accepting answers.
Want to improve this question? Update the question so it focuses on one problem only by editing this post.
Closed 8 months ago.
This post was edited and submitted for review 2 months ago and failed to reopen the post:
Original close reason(s) were not resolved
Improve this question
In MySql table have data and also have some empty values in the same row. Now I want to display that data into the user without that empty values. I'm not write any code yet
Welcome to Stack Overflow!
1.
I'm not too familiar with C# winforms, but this post can help you establish a connection to your MySQL database where you can query for specific data.
Code taken from that post:
string myConnectionString = "server=localhost;database=testDB;uid=root;pwd=abc123;";
private void button1_Click(object sender, EventArgs e)
{
MySqlConnection cnn = new MySqlConnection(myConnectionString);
try
{
cnn.Open();
MessageBox.Show ("Connection Open!");
cnn.Close();
}
catch (Exception ex)
{
MessageBox.Show("Cannot open connection!");
}
}
Data is retrieved from a MySQL database using a specific SQL (or "Structured Query Language"). In order to learn the basic MySQL syntax for queries, I would recommend a turorial like this.
3.
To send a SQL query to your database (via your established connection in Step 1) I would recommend looking at this post that gives an example on how to send a query via C# winforms
Code taken from that post:
public void Select(string filename)
{
string query = "SELECT * FROM banners WHERE file = '"+filename+"'";
//open connection
if (this.OpenConnection() == true)
{
//create command and assign the query and connection from the constructor
MySqlCommand cmd = new MySqlCommand(query, connection);
//Execute command
cmd.ExecuteNonQuery();
//close connection
this.CloseConnection();
}
}
Overall, you're missing a few steps inbetween C# winforms and MySQL. Different languages USUALLY have an external library that facilitates: establishing a MySQL connection and launching MySQL queries. After obtaining the data from a MySQL query return, its up to you on how to display it to the user!
Hope this helps :D
Closed. This question needs debugging details. It is not currently accepting answers.
Edit the question to include desired behavior, a specific problem or error, and the shortest code necessary to reproduce the problem. This will help others answer the question.
Closed 5 years ago.
Improve this question
I'm trying to add a record to my database from my website but keep getting this mapping error
No mapping exists from object type System.Web.UI.WebControls.ListItem to a known managed provider native type.
SqlCommand cmd = new SqlCommand(query, con);
cmd.Parameters.AddWithValue("#strFirstName", txtAddFirstName.Text);
cmd.Parameters.AddWithValue("#strLastName", txtAddLastName.Text);
cmd.Parameters.AddWithValue("#strCity", txtAddCity.Text);
cmd.Parameters.AddWithValue("#intStateID", ddlAddState.SelectedValue);
cmd.Parameters.AddWithValue("#strZip", txtAddZip.Text);
cmd.Parameters.AddWithValue("#intDepartmentID", ddlAddDepartment.SelectedValue);
cmd.Parameters.AddWithValue("#intLevelID", ddlAddLevel.SelectedItem);
cmd.Parameters.AddWithValue("#isActive", chkAddActive.Checked ? 1 : 0);
cmd.Parameters.AddWithValue("#intReasonForTerminationID", ddlAddReasonForTermination.SelectedValue);
cmd.Parameters.AddWithValue("#dtmDateOfTermination", txtAddDateOfTermination.Text);
con.Open();
cmd.ExecuteNonQuery();
con.Close();
This line:
cmd.Parameters.AddWithValue("#intLevelID", ddlAddLevel.SelectedItem);
Returns an object not a value. Try changing it to .SelectedValue;
I would assume that this kind of code
cmd.Parameters.AddWithValue("#intLevelID", ddlAddLevel.SelectedItem);
is something like a LineItem type but not a string and you have to pass a string value to the method
Closed. This question needs debugging details. It is not currently accepting answers.
Edit the question to include desired behavior, a specific problem or error, and the shortest code necessary to reproduce the problem. This will help others answer the question.
Closed 5 years ago.
Improve this question
Load the Store Procedure without using EF I Faced this Problem. I want to load the SP list type
Please see the sample below. Its also shows how to read the records from the StoredProcedure execution in your C# Code.
Also its a good practice initiating the SQLConnection and SQLCommand object in Using Block.
using (var conn = new SqlConnection(cnnString))
using (var cmd = conn.CreateCommand())
{
conn.Open();
cmd.CommandText = "SearchCustomer";
cmd.CommandType = System.Data.CommandType.StoredProcedure;
// Use below line if you want to pass any parameter values to SP.
// cmd.Parameters.AddWithValue("#id", CustomerId);
using (var reader = cmd.ExecuteReader())
{
while(reader.Read())
{
// Read Column based on Column Name. Below sample reads String column
Console.WriteLine(reader.GetString(reader.GetOrdinal("columnName"));
// Read Column based on Column Index. Below sample reads int column
Console.WriteLine(reader.GetInt32(1));
}
}
}
Closed. This question needs to be more focused. It is not currently accepting answers.
Want to improve this question? Update the question so it focuses on one problem only by editing this post.
Closed 7 years ago.
Improve this question
I am very new to this.So pardon me if I make any mistakes.
I am trying to read the Jira database.I just need to read it.
No write operations will be involved.
I am using C#.From what little I know, I think a connection has to be established with the Jira database using
SqlConnection conn=new SqlConnection(connectionstring);
And then I can read data using SqlReader.I have tried searching through the database and found few links like http://www.codeproject.com/Tips/762516/Connecting-to-Jira-using-Csharp
But I am not being able to understand.Can anyone help me out or direct me to few resources.
In the links that I searched through there are terms like "Rest API" etc. Do I need to know them ?
If you have access to the database, and want to read data that way, that's entirely possible using standard .NET objects, but you'll probably need to be decent at SQL to get the data out that you want.
Here's how you can (try to) access the database:
SqlDataReader rdr = null;
SqlConnection conn = new SqlConnection("YOUR_CONNECTION_STRING_HERE");
SqlCommand cmd = new SqlCommand("select * from whatever_jira_table", conn);
rdr = cmd.ExecuteReader();
//look up how to read from a reader
conn.Close();
conn.Dispose();
Another option is to use a Jira API which it looks like you can get from NuGet through Visual Studio. If you go this route, you need access to the Jira REST API, and it will expose a more friendly (different?) way to access data.
Either way, just go into Visual Studio, make a console app, and start adding code and stepping through with the debugger until thing start making sense.
Closed. This question needs details or clarity. It is not currently accepting answers.
Want to improve this question? Add details and clarify the problem by editing this post.
Closed 8 years ago.
Improve this question
I have two classes in which the teachers have merged their final projects into one, one class is software engineering and another one is data bases. The thing is that for SE i have to develop a desktop/smartphone app and for DB i have to develop every DB related stuff for that app.
But i have to keep both things separated, i mean i have to keep C# code away from SQL code so i can't do queries or any stuff using selection strings and such, i just have to call stored procedures with said queries from code.
Any idea how could i do that? To summarize i just want to call any code or procedure that i write in sql and store it's values in a variable,object or array.
As i said i cannot use:
string selectstr = "SELECT * FROM students;"
and execute that query, i have to write that in sql and call it from C# and store the values returned.
Stored procedures are called like any other SQL command in C#:
using (SqlCommand cmd = new SqlCommand("MyStoredProcedure", connection))
{
cmd.CommandType = CommandType.StoredProcedure;
cmd.Parameters.AddWithValue("#myParameter1", value);
...
using (SqlDataReader reader = cmd.ExecuteReader())
{
...
}
}
The "magic" bit is to set the command type correctly ;-)