2011-07-06 1 views
0

나는이 모든 것을 가지고 멍청하다고 말하기 시작했습니다. 그러나 첫 번째가되지는 않을 것입니다. PC# Windows에서 사용자 입력 텍스트를 얻으려고하면 MySQL 데이터베이스에 응용 프로그램을 만들려고하는데 스피드 버그 만 쓸 수 있습니다.

제목에서 알 수 있듯이 나는 어려움을 겪고 있습니다. 모든 도움을 주시면 고맙겠습니다.

나는 구글을 꽤 언젠가 검색했는데, 전에 오류가있는 다른 사람들, 예를 들어 this onethis one과 같은 게시물을 발견했습니다. 코드와 함께 놀아서 오류를 찾아 내고 시도 할 수 없었습니다.

이 프로그램은 오류가없는 base64로 변환 이미지 코딩, 그러나 어떤 점에서뿐만 아니라 데이터베이스에 코드를 통합하고자하는이 ..

이것은 내가 (아마도 하나가 무엇인가 내가 필요로하는 곳에서 멀리하지만 수하는 ..) : 난 그냥 button1_clicked에 있기 때문에, 문제를 포함

using System; 
using System.Collections.Generic; 
using System.ComponentModel; 
using System.Data; 
using System.Drawing; 
using System.Linq; 
using System.Text; 
using System.Windows.Forms; 
using System.IO; 
using MySql.Data.MySqlClient; 
using Microsoft.Data.Odbc; 
using System.Configuration; 
using System.Data.SqlClient; 


namespace BaseEncoder 
{ 
    public partial class Form1 : Form 
    { 
     public Form1() 
     { 
      InitializeComponent(); 

      byte[] imageBytes = null; 

      FileStream fs = new FileStream(@"C:/Users/m29582/Desktop/capture1.jpeg", FileMode.Open, FileAccess.Read); 
      //C:\Data\Kinect App\KinectApp\bin\Debug\capture0.jpeg 

      BinaryReader reader = new BinaryReader(fs); 
      try 
      { 
       long size = reader.BaseStream.Length; 
       imageBytes = new byte[size]; 
       for (long i = 0; i < size; i++) 
       { 
        imageBytes[i] = reader.ReadByte(); 
       } 
      } 
      finally 
      { 
       reader.Close(); 
       fs.Close(); 
      } 
      string imageString = Convert.ToBase64String(imageBytes); 
      TextWriter writer = new StreamWriter(@"C:/Users/m29582/Desktop/zcapture1.txt"); 
      label1.Text = "Enter First Name:"; 
      label2.Text = "Enter Last Name:"; 
      label3.Text = "Enter Date of Birth, ex.(1990):"; 
     } 
     private void button1_Click(object sender, EventArgs e) 
     { 
      string firstname = textBox1.Text; 
      string lastname = textBox2.Text; 
      string dob = textBox3.Text; 
      TextWriter writer = new StreamWriter(@"C:/Users/m29582/Desktop/zcapture1.txt"); 
      MySqlConnection cn = new MySqlConnection("Driver={MySQL ODBC 3.51 Driver}; Server=localhost; Database=kinect; Uid=root; Pwd=***;"); 
      MySqlDataAdapter da = new MySqlDataAdapter(); 
      DataSet ds = new DataSet(); 
      cn.Open(); 
      ds = new DataSet(); 
      da = new MySqlDataAdapter("Insert into kinect (Number, First Name, Last Name, DOB) values (null, @firstname, @lastname, @dob)", cn); 
      MySqlCommand cmd = new MySqlCommand(); 
      da.Update(ds); 
      MessageBox.Show("Success"); 
      cn.Close(); 
     } 

코드 전에 button1_Clicked. 나뿐만 아니라 힘든 시간을 보내고 있었다 다른 코드와 함께 놀러하려고 이렇게 많은 다른 예를 시도, 시도 :

da = new MySqlDataAdapter("Insert into kinect (Number, First Name, Last Name, DOB) values (null, " + @firstname + "," + @lastname + "," + @dob + ")", cn); 

을 가진 다른 몇 가지 변화와 함께 "?" 게다가. MySQL, ODBC 또는 SQL을 사용할 필요가 있는지 여부는 알지 못합니다. (이 경우에도 문제가 있습니다.)이 경험이 거의 없으므로 ... 이렇게 긴 설명을 해 주어서 죄송합니다. 요약 해주십시오. 다시 말하지만, 가능한 경우 텍스트 상자에서 텍스트 입력을 데이터베이스의 해당 열에 저장하도록하는 데 도움이 될 것입니다.

사이드 노트로, 당신이 머리 꼭대기에서 뭔가를 아는 경우 base64 코딩 된 그림을 데이터베이스에 통합하려는 약간의 도움도 좋아할 것입니다. 나는 당신의 시간을 거머쥘 수있는 말을하는 사람과는 달리 도움을주는 사람들, 답을 표시 할 것입니다.

답변

1

나는이 주제에 전문가가 아니지만, this documentation에 의해 판단하는 경우에만 MySqlDataAdapter 생성자가 아닌 INSERT 하나에 SELECT 쿼리를 전달할 수 있습니다.

+0

도움을 주셔서 감사합니다. 일단 나는 더 많은 대표자를 얻고 나는 또한 도움이되는 것을 표시 할 것이다. – Nick

관련 문제