|
Ak Hon wrote: when inputing a character it will lists the words which begin with the character
Sounds like you are trying to implement some sort of auto-complete? Correct me, if I am wrong
"Real programmers just throw a bunch of 1s and 0s at the computer to see what sticks" - Pete O'Hanlon
|
|
|
|
|
I am not sure this is a great idea.
Unless your native language has a lot of characters, there may be hundreds or
even thousands of words starting with the same character, so showing all these
in a list will take quite some time, and may not be appreciated by the user at all...
|
|
|
|
|
hi..
currently i am doing a project using c# express edition,
but i dont know how to do its sqlclr connection and how to deploy it.
could anybody help me on this?
thanks,
jac
|
|
|
|
|
Do you mean how to create connection to sql server or what?
If you want to create connection to sql server 2005 Express :
Step 1:
In you app.config add this code
<connectionStrings>
<add name="CONNECT"
connectionString="Data Source=.\SQLEXPRESS;Initial Catalog=YourDatabase;Integrated Security=True;"
providerName="System.Data.SqlClient" />
</connectionStrings>
Step 2:
add reference to your main code
using System.Data;
using System.Data.SqlClient;
add this to your main code
string connectionString;
connectionString = ConfigurationManager.ConnectionStrings["CONNECT"].ConnectionString;
SqlConnection conn = new SqlConnection(connectionString);
then if you want to open connection to your database :
conn.Open();
if you want to close connection :
conn.Close();
Hope this will help you.
Regard,
Edwin
|
|
|
|
|
Actually, the connection string i have done it but still i have problem.
let me explain what exactly happen in my application..
- my system is created in the c# express edition and for database is sql server 2005 (express edition)
- the system is in console application...
The idea is like these:
- supposed that my system can retrieve the result that fired by the trigger everytime there is a data inserted. Means that, everytime a data inserted into the table, all the data details would be display on the console application
- for now i have created the trigger but i dont know how to display the result fired by trigger on the console application.
If u can help me or give me idea on this, it would be very helpful.
Thanks in advance
Jac
|
|
|
|
|
Oh... Console base application...
Usually I create Windows app. To show my data, I usually use Datagridview.
If I want everytime a data inserted into the table, I just refresh the Datagridview's data source, and it will show the inserted data.
In your case, if you show your data using dataset or xml you just need to declare your data source again... I think it will auto refresh.
regard,
Edwin
|
|
|
|
|
hem...so do u mean that i dont need the trigger function?...because i dont have any other way to get the real time data inserted in the database since the trigger function fired whenever any transaction made on that particular table.
Before, i have done same thing that only using the dataset but if using the dataset i cant get the latest data (real time) inserted.
regard
Jac
|
|
|
|
|
No... no... no..., I mean that u just declare your data source again that u use to show your data, then the data that u showed before will auto refresh. There is no problem if u use trigger or other function. This code below just for example.
e.g :
I have a class1 to show my data from table like this :
private List<ContactBusiness> m_Contacts;
MyGridView.DataSource = m_Contacts;
Then in class2 to insert data:
private List<ContactBusiness> m_Contacts;
InsertData();
MyGridView.DataSource = m_Contacts;
Regard,
Edwin
|
|
|
|
|
oic...i have done the dataset but now the error is unhandled InvalidOperationException
the error description is:-> The requested operation requires a SqlClr context, which is only available when running in the Sql Server process.
I dont know how to use the SqlClr context how to write it in my code
jac
|
|
|
|
|
Can I see your code??
Regard,
Edwin
|
|
|
|
|
At first I do like This
=> using System;
using System.Collections.Generic;
using System.Text.RegularExpressions;
using Microsoft.CSharp;
using Microsoft.SqlServer.Server;
using System.Data;
using System.Data.SqlClient;
namespace AITania
{
class Program
{
//public static void InsertTrigger()
//{
// SqlTriggerContext triggerContext = SqlContext.GetTriggerContext();
// SqlPipe sqlPipe = SqlContext.GetPipe();
// SqlCommand command = SqlContext.GetCommand();
// if (triggerContext.TriggerAction == System.Data.Sql.TriggerAction.Insert)
// {
// command.CommandText = "SELECT * FROM INSERTED";
// sqlPipe.Execute(command);
// }
//}
static void Main(string[] args)
{
//---------------------------Database connection
SqlConnection conn = new SqlConnection("Data Source=DIMENSION3000\\SQLEXPRESS; Initial Catalog=AITania; User Id=sa; Password=123456");
DataSet AlertDataSet = new DataSet();
SqlDataAdapter da;
SqlCommandBuilder cmdBuilder;
//--------------------------Open Connection
conn.Open();
da = new SqlDataAdapter("SELECT * FROM AIEvent", conn);
cmdBuilder = new SqlCommandBuilder(da);
da.Fill(AlertDataSet, "AIEvent");
//-------------------------Displaying error
foreach (DataRow dr in AlertDataSet.Tables[0].Rows)
{
Console.WriteLine("EventID: {0}", dr["EventID"]);
Console.WriteLine("Time of Occur: {0}", dr["TimeOfOccur"]);
Console.WriteLine("Location: {0}", dr["LocationID"]);
Console.WriteLine("");
}
Console.ReadLine();
//--------------------------Close Connection
conn.Close();
//AIClass.AICheck.checkUserRole();
}
}
}
|
|
|
|
|
then after i have read about the trigger..I do like this (will call AIClass at the main class):
using System;
using System.Collections.Generic;
using System.Text;
using Microsoft.SqlServer.Server;
using System.Data;
using System.Data.SqlClient;
namespace AIClass
{
public class AICheck
{
[SqlTrigger(Event = "FOR INSERT", Name = "AITrigger", Target = "AIEvent")]
public static void checkUserRole()
{
//if (!SqlContext.IsAvailable)
//{
// Console.Write("Context none");
// Console.Read();
//}
//else
//{
SqlTriggerContext tgContext = SqlContext.TriggerContext;
SqlConnection conn = new SqlConnection("Data Source=DIMENSION3000\\SQLEXPRESS; Initial Catalog=AITania; User Id=sa; Password=123456");
using ( conn = new SqlConnection("context connection=true"))
{
conn.Open();
//SqlCommand cmd = conn.CreateCommand();
SqlDataReader reader;
//cmd.ExecuteNonQuery();
string msg = "";
if (tgContext.TriggerAction == TriggerAction.Insert)
{
SqlCommand sqlComm = new SqlCommand("SELECT * FROM INSERTED",conn);
//cmd.CommandText = "SELECT * FROM INSERTED";
SqlContext.Pipe.ExecuteAndSend(sqlComm);
//reader = cmd.ExecuteReader();
//sqlComm.Connection = conn;
//sqlComm.CommandText = "SELECT * FROM INSERTED";
//for (int x = 0; x < tgContext.ColumnCount; ++x)
//{
// msg += string.Format("Column {0} {1} been updated{2}", x, (tgContext.IsUpdatedColumn(x) ? "has" : "has not"), Environment.NewLine);
//}
for (int i = 0; i < reader.FieldCount; i++)
{
msg = msg + reader.GetName(i) + ":" + (string)reader[i] + " ";
}
} conn.Close();
}
//}
}
}
}
|
|
|
|
|
Oh, IC...
Now can I see your trigger query?
Regard,
Edwin
|
|
|
|
|
this is my trigger:
CREATE TRIGGER AITrigger ON AIEvent
FOR INSERT
AS
EXTERNAL NAME [AIClass].[AIClass.AICheck].[checkUserRole]
|
|
|
|
|
Maybe U must check your trigger query again..., because ic on your code there is no problem.
Or U can goto msdn forum.
Regard,
Edwin
|
|
|
|
|
ok then...thanks a lot for helping me..
regard,
jac
|
|
|
|
|
Hi,
I have an MS Access database which has password. Now I can open the database using the password from MS Access, but when I try to test connection from Visual Studio Connection String Settings Design Time Windows Form, I get message that "Not a valid password". Still, I tried to connect to that password protected MS Access database from C# using the connection string with password, and then when I run the application, I get Database Connection error message. Is there anything I am missing ? Would you please help me.
Thanks.
|
|
|
|
|
Probably it has to do with the connection string. Have you checked it's correct?
See here for more information: ConnectionStrings.com[^]
|
|
|
|
|
Hi Luis,
Thanks for your reply. Actually I tried with the correct Connection String, but looks like, only MS Access application can take the password to open the protected Mdb database and not from outside. Becauuse, In the Settings editor in Visual Studio, I used the designer to locate the MS Access database and provided the password to Test Connection, I get error from that designer with the message "Not a valid password".
Is there any possible reason for this ?
Regards
|
|
|
|
|
Can you remove the password from the database through Access? Are you sure you have the right password? I just created a password protected Access database and the connection strings work fine
Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\mydatabase.mdb;Jet OLEDB:Database Password=MyDbPassword; is the one I used.
"Real programmers just throw a bunch of 1s and 0s at the computer to see what sticks" - Pete O'Hanlon
|
|
|
|
|
Hi guys,
I have never done console programming and I need some help, basically what I am hoping to do is run a SQL alter table statement from a Console application. First is this possible? if so, please help!!!!
Thanks in advance
sasa
|
|
|
|
|
There is nothing special about a Console app, it resembles a Windows app
with a single empty Form, no Controls, and all code executing sequentially
(as if in the Form's constructor or Load event).
You can use all classes you want, do threading, whatever.
Your "GUI" is limited to Console.Write/WriteLine/Read/ReadLine.
Of course, a Console app can also create and show Forms, Dialogs, etc.
There is one thing a Console app cannot do: not show a console at all
(you can hide it, but it will show at start);
If all you need is an app with a command line interface, then you dont want
a Console app, you want a Windows app that does not show its main form, instead
it reads the command line (from Main() parameter or thru Environment.GetCommand...)
|
|
|
|
|
Sure - the ADO.NET classes are available to you in a console app, just like a windows one. You'd use the same code in both cases, to run the SQL that alters the table.
Christian Graus - Microsoft MVP - C++
"I am working on a project that will convert a FORTRAN code to corresponding C++ code.I am not aware of FORTRAN syntax" ( spotted in the C++/CLI forum )
|
|
|
|
|
SASA_1 wrote: hoping to do is run a SQL alter table statement from a Console application
It can be done and there is nothing special about it being a console app. You can do the same as if it were a Windows app
"Real programmers just throw a bunch of 1s and 0s at the computer to see what sticks" - Pete O'Hanlon
|
|
|
|
|
Hi all,
My boss wants me to write a small console app that runs at midnight everynight. The app opens up a "job file" (in this case, the job file will have a list of training days that people will be attending), connects to the exchange server (via the admin login?), opens that users calender and inserts that training day into his/her calender. If the user deletes the appointment, the app will create it again....
the only trouble im having is connecting to the exchange server at the "top level" as an admin so i can open a users calender and create/modify their appointments...
Does anyone have any suggestions / controls i can purchase that will help me build this app?
Many thanks,
Will
|
|
|
|