Nous essayons de construire un système de billetterie pour le Help Desk juste pour l'intranet. Décider de l'ASP .NET (C#) avec Visual Studio 2008 Express (pensons que nous avons une version complète flottant si nous en avons besoin). Rien d'extraordinaire, quelques pages saisissant des informations NTLM, des informations système et les stockant avec leur problème dans une base de données. L'objectif est de simplifier les choses, mais au lieu d'utiliser notre back-end SQL Server 2000, l'administrateur veut que j'utilise MS Access. J'ai le GridView et les connexions fonctionnent en douceur. Peut tirer des requêtes select jusqu'à ce que mon coeur soit content. Cependant, attacher dans quelques variables avec une zone de texte sur un bouton de soumission dans dire une instruction INSERT .. bien je ne sais même pas par où commencer avec MS Access. Chaque exemple d'Internet est en VB. NET et semble coder à la main ce que Visual Studio a déjà fait pour moi en quelques clics.INSERT d'ASP.NET à MS Access
MS Access va-t-il être trop dur pour tout ce que nous voulons faire? Sinon, où commençons-nous simplement à soumettre ces données dans les tableaux? Editer: Après une série de jeux, nous avons le OleDB en état de marche. Ce n'est pas joli, oui SQL Server serait génial mais, parfois, il suffit de jouer à la balle.
Modifier: Toute personne à la recherche d'une réponse codée réelle, vous y êtes. Il doit y en avoir d'autres dans le même bateau.
string userIP = Request.UserHostAddress.ToString();
string userDNS = Request.UserHostName.ToString();
string duser = Request.ServerVariables["LOGON_USER"]; //NTLM Domain\Username
string computer = System.Environment.MachineName.ToString(); //Computer Name
string connectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\\helpdesk.MDB;";
OleDbConnection conn = new OleDbConnection(connectionString);
conn.Open();
OleDbCommand cmd = new OleDbCommand();
cmd.Connection = conn;
cmd.CommandText = "INSERT INTO ticketing ([user], [comp], [issue]) VALUES (@duser, @computer, @col3)";
cmd.Parameters.Add("@duser", OleDbType.VarChar).Value = duser;
cmd.Parameters.Add("@computer", OleDbType.VarChar).Value = computer;
cmd.Parameters.Add("@col3", OleDbType.LongVarChar).Value = TextBox1.Text;
cmd.ExecuteNonQuery();
conn.Close();
Pourquoi l'administrateur ne veut-il pas utiliser SQL Server Express Edition, ce qui est gratuit? –
Nous avons SQL Server 2000 Enterprise avec un investissement important dans MS Dynamics. Il s'agit de ne pas changer ce qui fonctionne en ce moment et pas de machines de rechange. –
Ce n'est pas idéal, mais vous pouvez exécuter SQL Express sur le serveur Web si l'obtention d'un autre ordinateur pose problème. – JohnFx